查询语句有多个条件?

时间:2012-06-28 03:54:33

标签: mysql where-clause

使用我的数据库运行此查询语句后:

select * from articles
where content like 'keyword1' or content like 
keyword2' or content like 'keyword3' and date 
between '2012-06-18 00:00:00' and '2012-06-25 23:59:59' 
order by date asc

我可以找回根据日期排序的文章,内容包含指定关键字但不在日期范围内。谁能让我知道这个陈述有什么问题以及如何纠正它?

谢谢!

2 个答案:

答案 0 :(得分:0)

select * from articles where (content like 'keyword1' or content like 'keyword2' or content like 'keyword3') and (date between '2012-06-18 00:00:00' and '2012-06-25 23:59:59') order by date asc

试试吧。

答案 1 :(得分:0)

确保DB中日期字段的数据类型与传入的参数格式相同,如果日期字段为日期,请使用DATE_FORMAT()函数将其格式化为'%Y-%m-%d%h :%M:%s',然后比较它。类似的东西:

Where DATE_FORMAT(date,'%Y-%m-%d %H:%m:%s') between '2012-06-18 00:00:00' AND '2012-06-25 23:59:59'

HTH。