UNION:将多个查询的结果组合到一个查询结果之中,并去掉重复值
UNION ALL:将多个查询结果组合到一个查询结果中,但是包含重复值
INTERSECT:返回多个查询结果相同的部分
MINUS:返回两个查询结果的差集
首先,创建另一个表 emp10
-- 创建重复数据表 emp10
create table emp10 as (select * from emp where deptno = 10);
查看emp10 和 emp 表数据项,emp10 共有3条记录,emp表有14条记录。
select * from emp10;
select * from emp;
union 多个结果并集,并去掉重复值
select * from emp10
union
select * from emp
union all 取并集且不去除重复项
select * from emp10
union all
select * from emp
intersect 返回多个查询结果相同的部分
select * from emp10
intersect
select * from emp;
minus 取差集
select * from emp
minus
select * from emp10;
换个写法
select * from emp10
minus
select * from emp;
通过换写法之后的查询结果,可以看出,minus取的是第一个集合中有但第二个集合中没有的记录。
版权声明:本文为博主原创文章,未经博主允许不得转载。
Oracle集合操作
标签:oracle集合操作 union unionall intersect minus
本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:http://blog.csdn.net/magi1201/article/details/47374267