加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

SQL语句中OR和AND的混合使用的小技巧

发布时间:2022-03-08 11:11:23 所属栏目:MySql教程 来源:互联网
导读:今天有这样得一个需求,如果登陆人是客服的话,会查询订单是该客服以及还没有匹配客服的,刚开始想的是直接在sql语句上拼写 or assigned_id is null 的,测试了一下发现这样的话,前面的其他条件都没有用了 这样的话,第一个i.server_org_id = 4这个条件已经
      今天有这样得一个需求,如果登陆人是客服的话,会查询订单是'该客服'以及还没有匹配客服的,刚开始想的是直接在sql语句上拼写  or  assigned_id is null  的,测试了一下发现这样的话,前面的其他条件都没有用了
 
      这样的话,第一个i.server_org_id = 4这个条件已经不适用了,,,,,,,,从这里可以知道AND 的优先级比OR的优先级高,先执行了前面的AND 语句,然后执行后面的OR语句,所以查出来的数据不是我想要的数据
 
      后来又想了一下,可以先将对应的assigned_id查出来,如下
 
      这样查出来的数据只有assigned_id 为153的
 
最终版本:
  
终于把正确的数据全部读出来了,由此可知,()的优先级比AND 高,先执行(),再执行AND
 
 以上就是本文的全部内容,希望对大家的学习有所帮助。

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!