深入SQL SERVER合并相关操作Union,Except,Intersect的详解

697 查看

对于结果集有几个处理,值得讲解一下
1. 并集(union,Union all)
这个很简单,是把两个结果集水平合并起来。例如
SELECT * FROM A
UNION
SELECT * FROM B
【注意】union会删除重复值,也就是说A和B中重复的行,最终只会出现一次,而union all则会保留重复行。
SQL SERVER: 合并相关操作(Union,Except,Intersect)

2. 差异(Except)
就是两个集中不重复的部分。例如
SELECT * FROM A
EXCEPT
SELECT * FROM B
这个的意思是,凡是不出现在B表中的A表的行。

SQL SERVER: 合并相关操作(Union,Except,Intersect)

3. 交集(intersect)
就是两个集中共同的部分。例如
SELECT * FROM A
INTERSECT
SELECT * FROM B
这个的意思是,同时出现在A和B中的记录

SQL SERVER: 合并相关操作(Union,Except,Intersect)