用来做例子的两个表
-
tb_text1
tb_text1
-
tb_text2
tb_text2
1. UNION
两个查询结果集的集合(不包括重复行)
select * from tb_text1
union
select * from tb_text2;
查询结果:

相比于UNION ALL,UNION要进行扫描重复的值,速度会慢些,非必要的话尽量用UNION ALL
2. UNION ALL
两个查询结果集的集合(包括重复)
select * from tb_text1
union all
select * from tb_text2;
查询结果:

3. INTERSECT
两个查询结果集的交集(保留都有的部分)
select * from tb_text1
intersect
select * from tb_text2;
查询结果:

4. EXCEPT (oracle:MINUS)
在第一个结果集而不在第二个结果集
select * from tb_text1
minus
select * from tb_text2;
查询结果:

网友评论