【发布时间】:2013-03-27 17:56:31
【问题描述】:
我有一个问题。是否有任何与 MySQL 相关的内置函数或任何其他方法,它将返回在数据库表字段中包含 EXACT 单词的行?我知道使用 MySQL LIKE 运算符,您可以在将字符串值与包含通配符的模式字符串匹配的列中搜索指定的模式。但是使用 MySQL LIKE 子句,它也会返回子字符串条目。
例如。
假设 3 列值如下所示:
1. "Take another shot of courage"
2. "The End of This age is Not Yet"
3. "Employers can obtain this wage rate by submitting a request"
我想检索列值包含确切单词“年龄”的所有行
如果我们像这样准备查询
SELECT * FROM sometable WHERE somefield LIKE '%age%'
它将返回所有三行。但我的意图只是获得第二排。我们如何实现这一目标?提前致谢。
干杯,
简森。
【问题讨论】:
-
如果age前后总会有空格,何不使用LIKE ' %age% '
-
年龄前后放置两个空格,看看是否有效。我的意思是
% age % -
阅读全文搜索,
% age %不是我的解决方案。 -
SELECT * FROM sometable WHERE somefield LIKE '% age %' 适用于大多数情况,但“年龄某事”和“某事年龄”除外
-
@YogeshSuthar 完成..:)
标签: php mysql where-clause sql-like