1、intersect運算
返回查詢結果中相同的部分既他們的交集
SQL> select * from abc
2 intersect
3 select * from abc2 ;
2、minus運算
返回在第一個查詢結果中與第二個查詢結果不相同的那部分行記錄,
即兩個結果的差集
SQL> select * from abc2
2 minus
3 select * from abc ;
3、Union-Union all
(1)UNION在進行錶鏈接後會篩選掉重複的記錄,所以在錶鏈接後會對所產生的結果集進行排序運算,刪除重複的記錄再返回結果
(2)UNION ALL只是簡單的將兩個結果合併後就返回。如果返回的兩個結果集中有重複的數據,返回的結果集就會包含重複的數據
注:從效率上說,UNION ALL要比UNION快很多,如果可以確認合併的兩個結果集中不包含重複的數據的話,就使用UNION
ALL
使用 UNION 組合查詢的結果集有兩個最基本的規則:
(1)所有查詢中的列數和列的順序必須相同。
(2)數據類型必須兼容
Union:
SQL> select d.code,d.name from abc d
2 union
3 select e.code,e.name from abc3 e ;
oracle 中 取兩個表的交集 差集的問題
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.