我正在尝试进行精确搜索,但在使用“Sonal”进行搜索时遇到问题,我从包含“Sonal”和“personal”的记录中获取结果。当我在 var name 之前删除 % 然后得到记录从“Sonal”开始的结果并且没有发现文本在任何地方都有“Sonal”。
这里是查询:
AND (
lower(document_text) LIKE '%".$search_name2."%'
OR lower(customdoc_name) LIKE '%".$search_name2."%'
OR lower(doc_tags) LIKE '%".$search_name2."%'
)
建议。 1 - 个人证书
记录。 2 - 儿子证书。
当使用“Sonal”搜索时,我只想返回第二条记录。
我没有使用 FULLTEXT 字段。
最佳答案
这可能有帮助,
在字符串后面或前后或仅在前面添加空格。这样,在字符串开头或字符串中间或字符串结尾的情况下,您将得到带有“sonal”的结果。
AND (
lower(document_text) LIKE '%".$search_name2." %'
OR lower(customdoc_name) LIKE '% ".$search_name2." %'
OR lower(doc_tags) LIKE ' %".$search_name2."%'
)
关于php - Mysql 文本搜索问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7643557/