select sal,job,ename from emp where sal>1600 or job = 'MANAGER' and ename like 'J%'
与
select sal,job,ename from emp where sal>1600 or job = 'MANAGER' 查出的结果是一样的,那么第一条语句中的“and like ename like 'J%'” 起到了什么样的作用呢???还有我想问oracle是怎么进行条件查询的??
1、oracle 逻辑运算优先级
not > and > or
sal>1600 or job = 'MANAGER' and ename like 'J%'
因此等级于
(sal>1600) or (job = 'MANAGER' and ename like 'J%')
意思是查找:
sal大于1600
或者
job是MANAGER 且 ename 以J开头
结果一样的问题
1 可能你查的集合所有人的sal都大于1600
2 job是MANAGER 且 所有人的ename 都是以J开头