SQL SERVER 2008支持4种集合运算:UNION、UNION ALL、EXCEPT 以及 INTERSECT 集合运算符.
集合运算符能够将两个或更多外层查询组合成单个查询。执行用这些集合运算符连接的每个查询并组合各个查询的结果。
根据运算符不同,产生不同的结果。
1、UNION 运算符
UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。派生表的每一行不是来自 TABLE1 就是来自 TABLE2。集合含义TABLE1和TABLE2的并集。
2、UNION ALL 运算符
UNION ALL运算符返回两个输入中所有行的结果,不会去除重复行。
3、EXCEPT 运算符
EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。集合含义:TABLE1-TABLE2。
4、INTERSECT 运算符
INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复行。集合含义:TABLE1和TABLE2的交集。
Sql的各种集合运算实际上就是集合的运算,集合运算有和,交,并,差,补。
其中,sql server 2008 提供了和:union all 并:union 交:INTERSECT差:except 补集可以通过其余几种运算获得
970

被折叠的 条评论
为什么被折叠?



