Oracle集合运算

Oracle集合运算就是把多个查询结果组合成一个查询结果,oralce的集合运算包括:INTERSECT(交集)、UNION ALL(交集重复)、UNION(交集不重复)、MINUS(补集)。

  1. INTERSECT(交集),返回两个查询共有的记录。
  2. UNION ALL(并集重复),返回各个查询的所有记录,包括重复记录。
  3. UNION(并集不重复),返回各个查询的所有记录,不包括重复记录(重复的记录只取一条)。
  4. MINUS(补集),返回第一个查询检索出的记录减去第二个查询检索出的记录之后剩余的记录。

当我们使用Oracle集合运算时,要注意每个独立查询的字段名的列名尽量一致(列名不同时,取第一个查询的列名)、列的数据类型、列的个数要一致,不然会报错。

下面通过案例来分析Oracle集合运算:表结构参考:通过学生信息表“STUINFO_2018”和“STUINFO”来做Oracle集合运算的案例分析。
Oracle集合运算_第1张图片
Oracle集合运算_第2张图片

INTERSECT(交集)

select * from stuinfo 
intersect
select * from stuinfo_2018;

Oracle集合运算_第3张图片

UNION ALL(并集重复)

select * from stuinfo 
union all
select * from stuinfo_2018;

Oracle集合运算_第4张图片

UNION(并集不重复)

select * from stuinfo 
union 
select * from stuinfo_2018;

Oracle集合运算_第5张图片

MINUS(补集)

select * from stuinfo 
minus
select * from stuinfo_2018;

Oracle集合运算_第6张图片

你可能感兴趣的:(数据库,oracle,数据库)