在vendor_tbl Tabel中我有很多单词“Microsoft”但是当我输入Keyword'mecrsoft'时
或类似的东西它不会像micrsoft记录和sql查询返回0记录那样返回我
如何使用智能来进行查询它会返回所有记录,例如我的关键字
下面我在其他
中发布sql查询任何建议都有助于使查询更好
$keyword='mecrsoft';
$mykeyword= explode(" ",$keyword);
for($i=0;$i<count($mykeyword);$i++)
$keywords_v[]="vendor_name like '%".$mykeyword[$i]."%' or page_description
like '%".$mykeyword[$i]."%' or keyword like '%".$mykeyword[$i]."%' or
page_title like '%".$mykeyword[$i]."%' or page_description like
'%".$mykeyword[$i]."%' ";
$q="select vendor_name,slug,page_description,keyword,
page_title,page_body from vendor_tbl
where (".implode(',',$keywords_v).")";
$rs=mysql_query($q);
答案 0 :(得分:2)
我认为对于拥有分析器的搜索引擎来说,它可以理解错误的单词。例如,ElasticSearch和Fuzzy查询:
http://www.elasticsearch.org/guide/reference/query-dsl/fuzzy-query.html
或者你可以在MySQL中使用levenshtein函数
答案 1 :(得分:0)