or 和 and :同时存在于一条SQL中时,哪个逻辑符号的优先级更高?
程序员文章站
2022-03-04 19:14:22
...
问题:or 和 and :同时存在于一条SQL中时,哪个逻辑符号的优先级更高??
答:and级别高于or
现有一张测试表Test,表字段包括id,name,age,sex,class。
SELECT * FROM test WHERE sex='男' OR age=20 AND class=1
SELECT * FROM test WHERE (sex='男' OR age=20) AND class=1
由上图可知:SELECT * FROM test WHERE sex='男' OR age=20 AND class=1和SELECT * FROM test WHERE (sex='男' OR age=20) AND class=1
的执行效果相同。
注:多个and 和 or 混用也是这个道理,相当于把 and 看成乘号(*), 把 or 看成加号(+),这样sql的执行顺序就一目了然了。
上一篇: 这么多编程学习网站,总有一个适合你吧
下一篇: MySQL索引优化(为排序)