oracle 的交并差函数,intersect;union;minus。

创建表并添加数据:

--创建TABLE_A
create table TABLE_A
(
A varchar2(10),
B varchar2(10)
);
--给TABLE_A添加数据
insert into TABLE_A values('a1','b1');
insert into TABLE_A values('a2','b2');
insert into TABLE_A values('a3','b3'); --创建TABLE_B
create table TABLE_B
(
A varchar2(10),
B varchar2(10)
);
--给TABLE_B添加数据
insert into TABLE_B values('a1','b1');
insert into TABLE_B values('a2','b2');
insert into TABLE_B values('a4','b4');

intersect:  返回查询结果中相同的部分(交集)。

SELECT A,B FROM TABLE_A
INTERSECT
SELECT A,B FROM TABLE_B; --结果
A B
------------
a1 b1
a2 b2

union,union all:  将查询的结果组合后返回, union会过滤重复,union all不过滤重复。

--  TABLE_A和TABLE_B会去除重复数据
SELECT A,B FROM TABLE_A
UNION
SELECT A,B FROM TABLE_B; --结果
A B
------------
a1 b1
a2 b2
a3 b3
a4 b4 -- TABLE_A和TABLE_B中的所有数据
SELECT A,B FROM TABLE_A
UNION ALL
SELECT A,B FROM TABLE_B; --结果
A B
------------
a1 b1
a1 b1
a2 b2
a2 b2
a3 b3
a4 b4

minus:  返回在第一个查询结果中包含第二个查询结果中不包含的数据。

SELECT A,B FROM TABLE_A
MINUS
SELECT A,B FROM TABLE_B; --结果
A B
-----------
a3 b3
上一篇:dubbo支持通过telnet命令来进行服务治理


下一篇:VMwarevSphere Client 链接 vCenter Server中的主机,开启虚拟机提示:在主机当前连接状况下不允许执行该操作