Oracle集合操作



   在Oracle中提供了三種類型的集合操作: 並(UNION)、交(INTERSECT)、差(MINUS)

  • 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取的是第一個集合中有但第二個集合中沒有的記錄。





免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM