mysql - 如何编写包含多个 LIKE 子句的查询?

标签 mysql

我对这个查询有疑问:

SELECT * 
FROM posts 
WHERE title LIKE '%samsung%' 
OR title LIKE '%42%' 
AND price >= '100' 
AND price <= '1000000' 
AND shipping = '1' 
AND sale_type = '1' 
LIMIT 0,50

问题是,当我运行带有 2 个或更多 title LIKE '%%' 的查询时,它只显示带有 title LIKE '%%' 的查询

SELECT * 
FROM posts 
WHERE title LIKE '%samsung%' 
AND price >= '100' 
AND price <= '1000000' 
AND shipping = '1' 
AND sale_type = '1'
LIMIT 0,50

忽略其他选项。但是,如果我只使用标题 LIKE '%%' 运行查询,它就完美无缺。

最佳答案

你可以这样试试:

WHERE title REGEXP 'samsung|42'

更多信息在这里:http://forums.mysql.com/read.php?10,392332,392950#msg-392950

关于mysql - 如何编写包含多个 LIKE 子句的查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26262893/

相关文章:

mysql - Applescriptable mySQL 客户端 - 低成本还是免费?

MYSQL SELECT 列中 ""之间的多个值

php - 使用哪个 odbc 连接器?

mysql - 如何定义 View 的算法

php - 在 DB 中的值之间进行 SQL 搜索(邮政编码)

php - 使用当前数据+另一个表中定义的范围中的随机数更新数据库表

mysql - 如何动态比较连接表与源

java - 当字段值相等时,@Embeddable 的 @ElementCollection Map 不会保留

PHP T_ENCAPSED_AND_WHITESPACE

php - 创建新闻模块: part ADD