如何进行此类搜索?
这是我的表:
Name Category
---------------------------------
Company1 food,services
Company2 garden,gifts,services
Company3 other,auto
这是查询:
$search = $_GET['search'];
"SELECT * FROM companies WHERE category IN ('$search')";
上述搜索变量类似于mydomain.com?search=garden,services
如果在“类别”字段中存在任何匹配关键字,则可以获取所有相关行。
答案 0 :(得分:0)
最简单的SQL搜索可能是LIKE搜索:
SELECT * from companies where category LIKE ("%$search%");
您还可以进行REGEXP搜索:
SELECT * from companies where category REGEXP ("$search");
尽管如此,还有许多人在进行fulltext搜索。您可以配置MySQL来执行此操作,或者您可能希望尝试像SphinxSearch这样的解决方案。