Oracle ALL, ANY and SOME比较
来源:互联网 发布:会场安排问题 贪心算法 编辑:程序博客网 时间:2024/05/01 19:45
ALL
The ALL
comparison condition is used to compare a value to a list or subquery. It must be preceded by =, !=, >, <, <=, >= and followed by a list or subquery.
When the ALL
condition is followed by a list, the optimizer expands the initial condition to all elements of the list and strings them together withAND
operators
比较对象:一个值;一系列值或是子查询
位置:前 : =, !=, >, <, <=, >= ; 后 : 一系列值或子查询;
当比较对象是一系列值时,等价于 and连接这一系列值的分个比较;
SELECT empno, salFROM empWHERE sal > ALL (2000, 3000, 4000);-- Transformed to equivalent statement without ALL.SELECT empno, salFROM empWHERE sal > 2000 AND sal > 3000 AND sal > 4000;当比较对象是子查询时,会先转译为any,然后转译为exists进行查询.并且子查询返回0行时,取比较结果为TRUE.
SELECT e1.empno, e1.salFROM emp e1WHERE e1.sal > ALL (SELECT e2.sal FROM emp e2 WHERE e2.deptno = 20); -- Transformed to equivalent statement using ANY.SELECT e1.empno, e1.salFROM emp e1WHERE NOT (e1.sal <= ANY (SELECT e2.sal FROM emp e2 WHERE e2.deptno = 20)); -- Transformed to equivalent statement without ANY.SELECT e1.empno, e1.salFROM emp e1WHERE NOT EXISTS (SELECT e2.sal FROM emp e2 WHERE e2.deptno = 20 AND e1.sal <= e2.sal);
ANY
The ANY
comparison condition is used to compare a value to a list or subquery. It must be preceded by =, !=, >, <, <=, >= and followed by a list or subquery.
ANY
condition is followed by a list, the optimizer expands the initial condition to all elements of the list and strings them together withOR
operators.比较对象:一个值;一系列值或是子查询
位置:前 : =, !=, >, <, <=, >= ; 后 : 一系列值或子查询;
当比较对象是一系列值时,等价于 or 连接这一系列值的分个比较;
SELECT empno, salFROM empWHERE sal > ANY (2000, 3000, 4000);-- Transformed to equivalent statement without ANY.SELECT empno, salFROM empWHERE sal > 2000 OR sal > 3000 OR sal > 4000;当比较对象是子查询时,会转译为exists进行查询.并且子查询返回0行时,取比较结果为False.
SELECT e1.empno, e1.salFROM emp e1WHERE e1.sal > ANY (SELECT e2.sal FROM emp e2 WHERE e2.deptno = 10); -- Transformed to equivalent statement without ANY.SELECT e1.empno, e1.salFROM emp e1WHERE EXISTS (SELECT e2.sal FROM emp e2 WHERE e2.deptno = 10 AND e1.sal > e2.sal);
SOME
The SOME
and ANY
comparison conditions do exactly the same thing and are completely interchangeable.
some和any是一致的,二者可以相互转化;
- Oracle ALL, ANY and SOME比较
- ANY, SOME and ALL in Oracle
- oracle: any、some、all 解析
- oracle经验之ANY,SOME,ALL区别
- Oracle的SOME,ANY和ALL操作
- oracle中any,some,all用法
- oracle中的some,any和all
- oracle中some ,any ,all总结
- oracle之 any、some、all 解析
- 关于Oracle中的some/any/all
- Oracle之 any 、some、all解析
- Oracle SOME,ANY,All,EXISTS,IN
- Oracle sql 中的 ALL,ANY,SOME
- ALL SOME ANY
- sql-all,any,some
- Oracle 查询语句 all any some 含义和区别
- Oracle:any、all值的比较
- SOME,ANY,All,EXISTS,IN
- win7 启动修复(windows错误修复) 关闭的方法
- Cookie、Session傻傻分不清楚
- JSExecutionException: ReferenceError: Can't find variable: __fbBatchedBridge
- 我的学校申请之路
- EL表达式函数-获取字符串长度、截取字符串
- Oracle ALL, ANY and SOME比较
- Android插件化基础
- 吊炸天乐视推第4代超级电视X50系列 生态电视成主流消费模式
- C语言程序运行期间所作工作的概览
- ActiveMQ实战之 Topic发布订阅消息
- Android 常用布局及基本UI控件
- java内存布局图
- Android Studio使用Git上传项目以及从本地Clone GitHub上的项目
- github使用笔记-- GitHub Desktop 下载、安装、使用