Oracle的sql语句,查询条件加括号与不加括号区别 -

时间:2018-06-26 16:05:32   收藏:0   阅读:1936

例如:

SELECT ename, job, deptno
   FROM emp
     WHERE deptno in (10, 20)
          AND (ename like ‘%I‘ OR job like ‘%ER‘);

执行该sql,结果集如下:
1        JONES        MANAGER        20
2        CLARK        MANAGER        10

去掉上面sql查询条件中的括号,
SELECT ename, job, deptno
   FROM emp
     WHERE deptno in (10, 20)
          AND ename like ‘%I‘ OR job like ‘%ER‘;

结果集如下:
1        JONES        MANAGER        20
2        BLAKE        MANAGER        30
3        CLARK        MANAGER        10

 

出现如上差异的原因是:and比or优先级要高,括号可以改变条件判断的优先级!!!!!!!

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!