在Oracle中提供了三种类型的集合操作: 并(UNION)、交(INTERSECT)、差(MINUS)

Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;

Union All:对两个结果集进行并集操作,包括重复行,不进行排序;

Intersect:对两个结果集进行交集操作,不包括重复行,同时进行默认规则的排序;

Minus:对两个结果集进行差操作,不包括重复行,同时进行默认规则的排序。

可以在最后一个结果集中指定Order by子句改变排序方式。

--测试表A中的记录见下
select * from TestA;

--对两个结果集进行并集操作,不包括重复行
select * from TestA where id<3 union select * from TestA where id<6;

--对两个结果集进行并集操作,包括重复行行
select * from TestA where id<3 union all select * from TestA where id<6;

--对两个结果集进行交集操作,不包括重复行
select * from TestA where id<3 intersect select * from TestA where id<6;

--对两个结果集进行差操作(前面的结果集减去后面的),不包括重复行
select * from TestA where id<6 minus select * from TestA where id<3;

--对三个结果集进行取并集操作(取到的结果是从左到右依次的值不进行排序)在最后进行order by 操作
select * from (select * from TestA where id>5 union all select * from TestA where id<3 union all select * from TestA where id<2) order by id asc;

select * from (select * from TestA where id>5 union all select * from TestA where id<3 union all select * from TestA where id<2) order by id desc;

最新文章

  1. IndexOf、IndexOfAny 、Remove
  2. Leetcode Anagrams
  3. Delphi之DLL知识学习1---什么是DLL
  4. tensorflow3
  5. c# 关于浅拷贝和深拷贝
  6. java多线程中的生产者与消费者之等待唤醒机制@Version2.0
  7. Spark的任务处理流程
  8. Xcode快捷键 (本人总结常用的)
  9. 十大算法 pagerank 傅里叶变换
  10. Linux 下编写服务器程序时关于Address already in use 的小错误
  11. 基础--Linux环境下一键部署 lnmp
  12. bootstrap table 分页序号递增问题 (转)
  13. 弃 Java 而使用 Kotlin 的你后悔了吗?| kotlin将会是最好的开发语言
  14. C++中获取汉字拼音首字缩写/全拼及生僻字的处理
  15. 阿里云RDS读写分离数据查询延迟解决
  16. linux批量修改文件中包含字符串的查找替换
  17. How to compile and install Snort from source code on Ubuntu
  18. php的Allowed memory size of 134217728 bytes exhausted问题
  19. GIS工具-shp浏览器
  20. POJ 2516 Minimum Cost (网络流,最小费用流)

热门文章

  1. IE8 frameset SESSION丢失
  2. Mysql命令行添加用户并且给予远程访问服务器的权限
  3. 如何用C语言读写文件
  4. Django学习笔记第四篇--数据处理URL和数据库
  5. 《从零开始学Swift》学习笔记(Day 70)——Swift与Objective-C混合编程之Swift与Objective-C API映射
  6. js 中导出excel 较长数字串会变成科学计数法(转载)
  7. SaltStack远程执行-模块
  8. 在R语言环境中设置JRE路径
  9. Apache Kafka源码分析 &ndash; Broker Server
  10. Spark源码分析 &ndash; DAGScheduler