Oracle sql 中的 ALL,ANY,SOME
[转自] http://www.itpub.net/thread-1355835-1-1.html
any和some是等价的,其与all的前面都只能是比较符号,即=, !=, >, <, <=, >=;其与all的后面都只能是子查询或者一串值
any的含义是将一个值与any后的每一个值去比较,满足任何一个比较条件即为true
all的含义是将一个值与all后的每一个值去比较,满足全部比较条件才为true
CREATE TABLE tmp_test(ID number,txt VARCHAR2(10));
CREATE table tmp_test_his AS SELECT * from tmp_test WHERE 1=2;
INSERT INTO tmp_test VALUES(1,'a');
INSERT INTO tmp_test VALUES(2,'b');
INSERT INTO tmp_test VALUES(3,'c');
INSERT INTO tmp_test VALUES(4,'d');
INSERT into tmp_test_his VALUES(2,'b');
INSERT into tmp_test_his VALUES(3,'c');
INSERT into tmp_test_his VALUES(4,'x');
select a.* FROM tmp_test_his a where (a.id,a.txt) = all(select b.id,b.txt from tmp_test b where a.id=b.id and a.txt=b.txt);
ID TXT
---------- ----------
2 b
3 c
4 x 3 rows selected.
select b.id,b.txt from tmp_test b,tmp_test_his a where a.id=b.id and a.txt=b.txt; ID TXT
---------- ----------
2 b
3 c 2 rows selected.
select a.* FROM tmp_test_his a where (a.id,a.txt) = all(select b.id,b.txt from tmp_test b, tmp_test_his a where a.id=b.id and a.txt=b.txt); no rows selected.
select a.* FROM tmp_test_his a where (a.id,a.txt) = any(select b.id,b.txt from tmp_test b, tmp_test_his a where a.id=b.id and a.txt=b.txt);
ID TXT
---------- ----------
2 b
3 c
2 rows selected.
Oracle sql 中的 ALL,ANY,SOME的更多相关文章
- Oracle SQL中实现indexOf和lastIndexOf功能
Oracle SQL中实现indexOf和lastIndexOf功能 https://www.2cto.com/database/201305/210470.html
- Oracle sql 中的字符(串)替换与转换[转载]
1.REPLACE 语法:REPLACE(char, search_string,replacement_string) 用法:将char中的字符串search_string全部转换为字符串repla ...
- 【总结】Oracle sql 中的字符(串)替换与转换
1.REPLACE 语法:REPLACE(char, search_string,replacement_string) 用法:将char中的字符串search_string全部转换为字符串repla ...
- Oracle SQL中join方式总结
在ORACLE数据库中,表与表之间的SQL JOIN方式有多种(不仅表与表,还可以表与视图.物化视图等联结).SQL JOIN其实是一个逻辑概念,像NEST LOOP JOIN. HASH JOIN等 ...
- Oracle Sql中输入特殊字符 转义字符
1.单引号,出现在单引号对中的'号必须成对出现,每对代表一个', 例如select '''' from dual; 结果:' 前后两个'代表正常字符串,中间两个''代表一个',此语句输出结果只有一个'
- Oracle sql中的正则表达式
SELECT first_name, last_nameFROM employeesWHERE REGEXP_LIKE (first_name, '^Ste(v|ph)en$'); FIRST_NAM ...
- Oracle ------ SQLDeveloper中SQL语句格式化快捷键
Oracle SQL Developer中SQL语句格式化快捷键: 每次sql复制到SQL Developer面板的时候,格式老不对,而且看起来很不舒服,所有的sql都挤在一行完成. 这时我们可以全选 ...
- Oracle中的内置函数在sql中的转换整理
程序里面经常会即支持Oracle数据库,又支持sql数据库.而有些Oracle内置函数用的比较多,但在sql中语法有些不同,我做了些整理,希望可以帮助大家.... 1.oracle中的内置函数:ora ...
- Oracle EBS中分类账和法人实体 的关系(有sql语句实例)
Oracle EBS中分类账和法人实体 的关系(有sql语句实例) 2012-12-06 16:05 2822人阅读 评论(0) 收藏 举报 分类: Oracle EBS(12) Oracle数据 ...
随机推荐
- Reddit指南
一.简介 Reddit是网页新鲜事件和热点事件的源头,它也是互联网最有趣的地方和有高度组织的链接集中处. 二.指南 http://article.yeeyan.org/view/523415/45 ...
- 2、python的print函数格式化输出
1.格式化输出浮点数(float) pi = 3.141592653 print('%10.3f' % pi) #字段宽10,精度3 ,结果 print('%010.3f' % pi) #用0填充 ...
- 17.SQL 约束
约束用于限制加入表的数据的类型. 可以在创建表时规定约束(通过 CREATE TABLE 语句),或者在表创建之后也可以(通过 ALTER TABLE 语句). 我们将主要探讨以下几种约束: NOT ...
- Django框架 之 Pagination分页实现
Django框架 之 Pagination分页实现 浏览目录 自定义分页 Django内置分页 一.自定义分页 1.基础版自定义分页 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...
- Mybatis——缓存机制
MyBatis 包含一个非常强大的查询缓存特性,它可以非常方便地配置和定制.缓存可以极大的提升查询效率. MyBatis系统中默认定义了两级缓存. 一级缓存和二级缓存. 1.默认情况下,只有一级缓存( ...
- spark源码阅读之network(2)
在上节的解读中发现spark的源码中大量使用netty的buffer部分的api,该节将看到netty核心的一些api,比如channel: 在Netty里,Channel是通讯的载体(网络套接字或组 ...
- 编写高质量代码改善C#程序的157个建议——建议11: 区别对待==和Equals
建议11: 区别对待==和Equals 在开始本建议之前,首先要明确概念“相等性”.CLR中将“相等性”分为两类:“值相等性”和“引用相等性”.如果用来比较的两个变量所包含的数值相等,那么将其定义为“ ...
- 如何在sqlserver 的函数或存储过程中抛出异常。
raiserror 的作用: raiserror 是用于抛出一个错误.[ 以下资料来源于sql server 2005的帮助 ] 其语法如下: RAISERROR ( { msg_id | msg_s ...
- .net 序列化 与反序列化 Serializable
序列化:序列化指的是 将对象 通过流的方式 保存为一个文件. 反序列化则是将该文件还原成 对象的过程. 序列化的作用:序列化可以跨语言跨平台 传输数据,将某一对象序列化成通用的文件格式在进行传输. 比 ...
- C#LIQN基础知识