Oracle的集合运算

本文介绍了SQL中的集合运算,包括联合运算、完全联合运算、相交运算及相减运算,并详细解释了每种运算的特点和使用场景。此外还讨论了进行集合运算时需要遵循的原则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、所谓的集合运算
集合运算是用来把两个或多个查询的结果集做并、交、查的集合运算,包含集合运算的查询称为复合查询。

二、集合运算的几种方式

1、联合运算(union) [去重 不排序]
联合运算是从两个查询返回除去重复值后的结果。

这里写图片描述

2、完全联合运算(union all)[不去重 升序]
完全联合运算是从每个查询返回包括所有重复的结果。
注意:使用union all会比union的速度快,因为省去了去掉重复记录的时间。

这里写图片描述

3、相交运算(intersect) [不去重 升序]
相交运算返回多个查询中所有相同的行。

这里写图片描述

4、相减运算(minus)[不去重 升序]
相减运算返回在第一个查询中而不在第二个查询中的行。
(第一个 SELECT 语句减第二个 SELECT 语句)。

这里写图片描述

三、集合运算要看的原则

1、在两个select列表中的表达式必须在数目和数据类型上相匹配。

2、可以用圆括号改变执行的顺序。

3、order by 子句只能出现在语句的最后,从第一个select语句接收列名、别名或者位置记号。

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值