我想从像这样的字符串中搜索确切的单词
id Description
1 This is nice pen looking good
2 This is nice pendrive looking good
Run Code Online (Sandbox Code Playgroud)
搜索字符串:pen
我当前的查询
SELECT * FROM `table` WHERE Description like '%pen%';
Run Code Online (Sandbox Code Playgroud)
上面的查询返回两条记录,但我只希望第一条记录。因为笔字与我的搜索字符串完全匹配。
预期产量
1 This is nice pen looking good
Run Code Online (Sandbox Code Playgroud)
尝试使用正则表达式:
SELECT
*
FROM
`table`
WHERE
Description regexp '(^|[[:space:]])pen([[:space:]]|$)';
Run Code Online (Sandbox Code Playgroud)
或使用单词边界:
SELECT
*
FROM
`table`
WHERE
Description regexp '[[:<:]]pen[[:>:]]';
Run Code Online (Sandbox Code Playgroud)
您可以使用REGEXPand[[:<:]]和[[:>:]]单词边界标记:
SELECT
*
FROM
`table`
WHERE
Description REGEXP '[[:<:]]pen[[:>:]]';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2807 次 |
| 最近记录: |