[英]How to search with keywords? (PHP)
我想知道如何为关键字生成搜索SQL查询:
SELECT * FROM table WHERE keyword LIKE %keyword%;
但是如何使用多个关键字。
我希望这是有道理的...
SELECT *
FROM `table`
WHERE keyword LIKE '%1%'
OR keyword LIKE '%2%'
OR keyword LIKE '%3%'
如果我没看错,这就是您要寻找的
请检查以下代码:
您可以使用全文搜索
SELECT col1 FROM table_name
WHERE MATCH (col1, col2, col3)
AGAINST ('keywords');
为此,您需要在要搜索的列上应用全文索引。
您也可以使用IN
运算符-
SELECT col1 FROM table_name
WHERE col1 IN (keyword1, keyword2, keyword3, ...);
您可以结合使用百分号和下划线通配符
SELECT * FROM table WHERE keyword LIKE "%keywordA_keywordB%";
或使用CONTAINS并执行以下操作:
SELECT * FROM table
WHERE keyword CONTAINS "%keywordA%" AND keyword CONTAINS "%keywordB%";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.