GBase 8a
其他
文章

sql中and和or的执行顺序

发表于2024-03-29 08:45:34146次浏览1个评论

客户咨询了一个SQL问题,select * from table1 where 条件1  and  条件2  or  条件3  and  条件4的实际条件的顺序是什么?

该SQL的实际执行顺序是(条件1  and  条件2) or (条件3 or 条件4),也就是条件1,2并,然后条件3,4并,最后执行or

括号,and和or的执行顺序是括号大于and,大于or,先执行括号,再执行and,最后执行or条件。

上例中,实际上可能需要的效果是条件1 and (条件2 or条件3) and 条件4
所以当or合and同时运用时,建议是不考虑默认优先级顺序,而是采用括号来实现需要执行的顺序,这样增加SQL的逻辑性和可读性。

评论

登录后才可以发表评论
用户头像
GBase用户28017发表于 5个月前
学习了。