如何使用关键字进行搜索? (PHP)

时间:2014-09-03 17:02:15

标签: php mysql sql search

我想知道如何为关键字生成搜索SQL查询:

我知道:

SELECT * FROM table WHERE keyword LIKE %keyword%;

但如何使用多个关键字。

我希望这是有道理的......

3 个答案:

答案 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%";