SQLServer中取两个表的交集,并集和差集
在项⽬中遇到要取两个表差集的情况
假设有两个表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. Interct 获取两个表的交集
Select*from tblNZPostCodes
interct
Select*from NZPostcode
4. except 获取第1个表中存在,⽽第2个表中不存在的数据
⽐如,下⾯的语句将获取在tblNZPostCodes中存在,但NZPostcode中不存在的数据
Select*from tblNZPostCodes
except
Select*from NZPostcode