使用PHP在MySQL中搜索完全匹配的单词

时间:2014-02-11 13:16:11

标签: php mysql

我有一个页面,其中列出了表格格式的所有数据。现在我想在其中实现搜索功能。但在这里我想搜索完全匹配的单词而不是那个单词。

MySQL Querys: -

SELECT * FROM `cc_tbl_car_review` WHERE expert_title like '%bm%'
SELECT * FROM `cc_tbl_car_review` WHERE expert_title like 'bm%'
SELECT * FROM `cc_tbl_car_review` WHERE expert_title like '%b'

这一切都不适合搜索。如果您有任何解决方案,请与我分享。

3 个答案:

答案 0 :(得分:1)

你试过了吗?

SELECT * FROM `cc_tbl_car_review` WHERE expert_title ='bm'

如果您想在更大的字符串中找到整个单词匹配,请使用@Niet_the_Dark_Absol的答案。

他的查询只会在cat而不是My cat is brownMy category color is brown

中找到My bobcat is brown这个词

答案 1 :(得分:1)

尝试REGEXP:

... WHERE expert_title REGEXP '\bbm\b'

\b表示单词边界,理论上应该允许您匹配精确单词(虽然在实践中它可能在某些边缘情况下失败)

答案 2 :(得分:0)

尝试使用=符号代替LIKE。这将在您的数据库中查找完全匹配。

SELECT * FROM `cc_tbl_car_review` WHERE expert_title = 'bm';