mysql文本搜索或语法

时间:2011-11-13 20:50:28

标签: php mysql

我有

SELECT * FROM hnurl WHERE title LIKE('%text1%')

如何对此进行扩展以在同一查询结果中添加LIKE('%text2%')?内容?

4 个答案:

答案 0 :(得分:3)

你试过了吗?

SELECT * FROM hnurl WHERE title LIKE '%text1%' OR title LIKE '%text2%';

答案 1 :(得分:2)

如果您想要找到其中一个或两个字符串的行,请使用OR

SELECT * FROM hnurl
WHERE title LIKE '%text1%'
OR title LIKE '%text2%'

如果您想要找到两个字符串的行,请使用AND

SELECT * FROM hnurl
WHERE title LIKE '%text1%'
AND title LIKE '%text2%'

旁注:您可能还希望考虑使用full-text search或外部文本搜索引擎来提高查询效果。

答案 2 :(得分:0)

你可以添加

... OR title LIKE '%text2%'

答案 3 :(得分:0)

使用MySQL REGEXP也可以看到http://dev.mysql.com/doc/refman/5.1/en/regexp.html上最简化的示例,如:

SELECT * FROM hnurl
WHERE title REGEXP 'text(1|2)'

可能的变化。