tags

sky***earth***moon
sun***animals***iron
silver***gold***night

***-是不同标记的分隔符
我想按字符串搜索该列anima
$sql = "select * from images where tags like '%anima%'";

它给我animals的结果,但我只需要anima作为整个字符串,由***分隔。
在上面的示例中,结果应该为零。
有什么帮助吗?

最佳答案

使用REGEXP并搜索被单词边界包围的anima

SELECT *
FROM images
WHERE tags REGEXP '[[:<:]]anima[[:>:]]';

按照下面的链接进行演示,演示逻辑是否正确。
Demo
documentation开始:
REGEXP和RLIKE是REGEXP_LIKE()的同义词。
所以我们也可以用RLIKE代替REGEXP

关于php - 选择像但作为定界符之间的整个字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50442550/

10-10 10:05