在供应商选项卡中,我有很多单词“Microsoft”,但当我输入关键字“mecrsoft”时
或者类似这样的东西它不返回我,比如micrsoft record和sql query返回0个记录
如何使用智能使查询返回所有记录,如关键字
下面,我在other中发布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);

最佳答案

我认为这是一个搜索引擎的工作与分析谁理解错误的话。例如,ElasticSearch和Fuzzy查询:
http://www.elasticsearch.org/guide/reference/query-dsl/fuzzy-query.html
或者在MySQL中使用levenshtein函数
Levenshtein: MySQL + PHP

09-28 13:35