我想从字符串中搜索确切的单词,例如
id Description
1 This is nice pen looking good
2 This is nice pendrive looking good
搜索字符串 : pen
我的当前查询
SELECT * FROM `table` WHERE Description like '%pen%';
上面的查询返回两条记录,但我只想要第一条记录。因为 pen 单词与我的搜索字符串完全匹配。
预期输出
1 This is nice pen looking good
最佳答案
尝试使用正则表达式:
SELECT
*
FROM
`table`
WHERE
Description regexp '(^|[[:space:]])pen([[:space:]]|$)';
Demo
或使用 word boundaries :
SELECT
*
FROM
`table`
WHERE
Description regexp '[[:<:]]pen[[:>:]]';
关于MySQL - 从字符串中搜索确切的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42036956/