mysql 中 where条件的OR 和 and 加括号的说法
需求,我要检索出 a =1 或者 b=1 并且 c = 0 或者 c=1 时候的结果正确写法:select * from table_name where a=1 or b=1 and (c=0 or c=1);这样就会先检索a=1 或者 b=1 的结果集,然后再从中获取c=0 或者 c=1的结果集错误写法:select * from table_name where a=1 or b=...
·
需求,我要检索出 a =1 或者 b=1 并且 c = 0 或者 c=1 时候的结果
正确写法:
select * from table_name where a=1 or b=1 and (c=0 or c=1);
这样就会先检索a=1 或者 b=1 的结果集,然后再从中获取c=0 或者 c=1的结果集
错误写法:
select * from table_name where a=1 or b=1 and c=0 or c=1;
这样的写法会检索a=1 或者 b=1 或者 c=1 再从中获取c=0的结果,所以我们得用括号将 c=0 or c=1 括起来,防止顺序上出现问题。
更多推荐
已为社区贡献1条内容
所有评论(0)