创建表并添加数据:
--创建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