在項目中遇到要取兩個表差集的情況
假設有兩個表tblNZPostCodes, NZPostcode 兩個表中存儲的都是新西蘭的post code信息,字段一致,只是數據上有所差異。
1. Union 獲取兩個表的合集並且自動過濾重復數據
Select * from tblNZPostCodes Union Select * from NZPostcode
2. Union all 獲取兩個表的合集並且不過濾重復數據
Select * from tblNZPostCodes Union all Select * from NZPostcode
3. Intersect 獲取兩個表的交集
Select * from tblNZPostCodes intersect Select * from NZPostcode
4. except 獲取第1個表中存在,而第2個表中不存在的數據
比如,下面的語句將獲取在tblNZPostCodes中存在,但NZPostcode中不存在的數據
Select * from tblNZPostCodes except Select * from NZPostcode