我想知道如何为关键字生成搜索SQL查询:
SELECT * FROM table WHERE keyword LIKE %keyword%;
但如何使用多个关键字。
我希望这是有道理的......
答案 0 :(得分:1)
SELECT *
FROM `table`
WHERE keyword LIKE '%1%'
OR keyword LIKE '%2%'
OR keyword LIKE '%3%'
如果我理解你,那就是你正在寻找的
答案 1 :(得分:1)
请查看以下代码:
您可以使用全文搜索
SELECT col1 FROM table_name
WHERE MATCH (col1, col2, col3)
AGAINST ('keywords');
为此,您需要对要搜索的列应用全文索引。
您也可以使用IN
运算符 -
SELECT col1 FROM table_name
WHERE col1 IN (keyword1, keyword2, keyword3, ...);
答案 2 :(得分:0)
您可以使用百分号和underscore wildcards
的组合SELECT * FROM table WHERE keyword LIKE "%keywordA_keywordB%";
或使用CONTAINS并执行以下操作:
SELECT * FROM table
WHERE keyword CONTAINS "%keywordA%" AND keyword CONTAINS "%keywordB%";