运算符-UNION、INTERSECT、MINUS

运算符-UNION、INTERSECT、MINUS

 

在SQL语句中,我们会经常用到运算符-UNION、INTERSECT、MINUS来解决一下SQL查询问题

UNION和NUION ALL 多个表数据合并

(1)UNION 操作符用于合并两个或多个 SELECT 语句的结果集。

(2)注意:UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。

(3)注意:列的字段个数相同,对应的字段数据类型也要相似

UNION 合并且去重复

a=1,2,3   b=1,2,4   =>a +UNION+ b=1,2,3,4

a1                 a2

    

 

select a1ID "学号",a1name "姓名" from a1

 UNION

select * from a2

如,

UNION  ALL 直接合并不去重复

(1)UNION ALL操作符返回两个查询的结果集的并集。对于两个结果集的重复部分,不去重。

a=1,2,3  b=1,2,4  =>  a +UNION+ b=1,2,3,1,2,3,4

select a1ID "学号",a1name "姓名" from a1

 UNION ALL

select * from a2

INTERSECT交集(取两个集合相同值,且去重复)

a=1,2,3  b=1,2,2,4  =>  a +INTERSECT+ b=1,2

select * from a1

INTERSECT

select * from a2;

如,

MINUS 差集:返回两个结果集的差集

以a为主,将与b表的数据相同的部分减去

a=1,2,3  b=1,2,4  =>  a + MINUS + b=3

select * from a1

MINUS

select * from a2;

如,