欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

or 和 and :同时存在于一条SQL中时,哪个逻辑符号的优先级更高?

程序员文章站 2022-03-04 19:14:22
...

问题:or 和 and :同时存在于一条SQL中时,哪个逻辑符号的优先级更高??

答:and级别高于or

现有一张测试表Test,表字段包括id,name,age,sex,class。

or 和 and :同时存在于一条SQL中时,哪个逻辑符号的优先级更高?

SELECT * FROM test WHERE sex='男' OR age=20 AND class=1

or 和 and :同时存在于一条SQL中时,哪个逻辑符号的优先级更高?

SELECT * FROM test WHERE (sex='男' OR age=20) AND class=1

or 和 and :同时存在于一条SQL中时,哪个逻辑符号的优先级更高?

    由上图可知: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