mysql and or 优先级

mysql中,经常会遇到and 和or连用的情况,这时候就需要知道and和or的优先级 and优先级高于or,sql中先执行and


拿单表user举例:

user中所有的数据:

select * from user;


执行如下Sql语句:

select * from user t where t.classNumber=1 and age =25 or birthplace='北京';

由于是and优先于or,所以实际上查询的意思应该是“1班中25岁的人以及所有北京的人

执行结果如下:



如果想让or优先,需要加括号,如下:

SELECT * FROM USER  t WHERE t.classNumber = 1 AND (age = 25 OR birthplace = '北京');

执行结果如下:


意思是“1班中的人,其中是25岁或者是北京的"


两者查出来的截然不同!所以使用的时候一定要注意!




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值