SQL获取数据返回所有值

时间:2014-05-07 13:55:38

标签: mysql sql

这是我的查询

select *  from table8 where dept='Mechanical' and date between '2014-04-01' and '2014-04-26' and  status='Completed' or status='Pending'

它返回其他dept值

1 个答案:

答案 0 :(得分:1)

OR运算符的优先级低于AND。参见MySQL运算符优先级规则,例如here

所以这一切都正常,但是你做了or status='Pending',它也会返回只有待处理状态的行。

使用括号来阐明优先顺序,特别是:

... and (status='Completed' or status='Pending')