我在PHP中创建搜索功能。每当我使用我的查询进行搜索时,它都会返回与搜索的关键字/文本类似的文本。我想输出最接近搜索关键字的文本/数据。
例如:如果我搜索' omkar'关键字然后查询将必须返回' omkar'的所有记录。以及最接近的文字,例如' oskar',' onkar' omkr'等等
我正在使用PHP的下一个MySQL查询:
$que = mysql_query("select * from table where name like '%{$name}%'"
此代码可以工作并执行类似的单词/文本,但我也希望显示最接近的单词。
答案 0 :(得分:0)
我会使用“FULL TEXT SEARCH”索引。它专为完全相同的目的而设计。
请参阅: - https://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html - https://dev.mysql.com/doc/refman/5.1/en/fulltext-boolean.html
除了性能之外,它还为构建查询提供了额外的语法,例如:
mysql> SELECT * FROM articles WHERE MATCH (title,body)
-> AGAINST ('+MySQL -YourSQL' IN BOOLEAN MODE);