Php,Mysql匹配设置多个值

时间:2015-10-27 20:05:02

标签: php mysql search

如何进行此类搜索?

这是我的表:

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

如果在“类别”字段中存在任何匹配关键字,则可以获取所有相关行。

1 个答案:

答案 0 :(得分:0)

最简单的SQL搜索可能是LIKE搜索:

SELECT * from companies where category LIKE ("%$search%");

您还可以进行REGEXP搜索:

SELECT * from companies where category REGEXP ("$search");

尽管如此,还有许多人在进行fulltext搜索。您可以配置MySQL来执行此操作,或者您可能希望尝试像SphinxSearch这样的解决方案。