100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > sql语句中and or的运算顺序

sql语句中and or的运算顺序

时间:2020-04-02 13:00:56

相关推荐

sql语句中and or的运算顺序

查询一:select * from orders where orders_status=‘od’ and reship_type=0 or reship_type=1

查询二:select * from orders where orders_status=‘od’ and (reship_type=0 or reship_type=1)

这两个查询得到的结果不一样,原因在于and和or的优先级一样,故在运行时从左往右进行

详解:1. 第一个查询会先判断orders_status='od'是否满足,再判断reship_type=0是否满足,最后再进行or reship_type=1,故在此查询中,只要orders_status='od'和 reship_type=0同为真,或者 reship_type=1为真即会返回结果2. 第二个查询中,首先运行括号内的部分,即当reship_type=0 或者 reship_type=1中至少有一个为真 ,并且orders_status='od' 也同时为真时才会返回结果。

注:sql查询遵循先判断优先级高的,再判断优先级低的。其中()、not、and、or由左到右,优先级越来越低

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。