ORACLE中UNION、UNION ALL、MINUS、INTERSECT学习

1、UNION和UNION ALL的使用与区别

如果我们需要将两个select语句的结果作为一个整体显示出来,我们就需要用到union或者union all关键字。union的作用是将多个结果合并在一起显示出来。

union和union all的区别是union会自动压缩多个结果集合中的重复结果,而union all则将所有的结果全部显示出来,不管是不是重复。

2、三大结果集处理方式概述

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

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

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

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

3、注意事项

可以在最后一个结果集中指定Order by子句改变排序方式;order by子句必须写在最后一个结果集里,并且其排序规则将改变操作后的排序结果;对于Union、Union All、Intersect、Minus都有效。

union 和 union all都可以将多个结果集合并,而不仅仅是两个,你可以将多个结果集串起来

使用union和union all必须保证各个select 集合的结果有相同个数的列,并且每个列的类型是一样的;但列名则不一定需要相同,oracle会将第一个结果的列名作为结果集的列名。

相关推荐
Wyz2012102412 分钟前
SQL如何实现实时数据的滑动窗口分析_SQL性能调优
jvm·数据库·python
Greyson113 分钟前
Bootstrap制作后台管理系统布局 Bootstrap如何搭建Dashboard框架
jvm·数据库·python
m0_6784854515 分钟前
mysql如何配置多实例端口隔离_mysql多实例端口规划
jvm·数据库·python
Dontla19 分钟前
Prometheus介绍(开源系统监控与告警工具)(时间序列数据库TSDB、标签化label-based多维分析、Pull模型、PromQL查询语言)
数据库·开源·prometheus
2301_8148098621 分钟前
如何在 Go 中精确安装指定版本的模块
jvm·数据库·python
m0_7488394930 分钟前
PHP跨平台部署AI应用_Docker容器化方案【教程】
jvm·数据库·python
LL_break30 分钟前
从零上手Redis:string编码原理、常用命令与设计逻辑详解
java·数据库·redis·缓存·java-ee
武超杰36 分钟前
MySQL调优(三)——EXPLAIN 执行计划
数据库·mysql
元拓数智43 分钟前
从 SQL 到自然语言:Arilink 语义治理与智能查询平台深度解析
数据库·sql·自然语言处理·智能问数
2401_8877245044 分钟前
怎样使用Navicat高级特权进行从备份中提取单表数据_企业数据保护.txt
jvm·数据库·python