T-SQL Part X: UNION, EXCEPT and INTERSECT

来源:互联网 发布:as3.0调用js页面方法 编辑:程序博客网 时间:2024/05/21 19:37

MSDN上关于EXCEPT和INTERSECT的文档。MSDN上关于UNION的文档。

值得注意的是,UNION其实有两种,一种是普通的UNION,另外一种是UNION ALL。加上EXCEPT和INTERSECT构成了T-SQL中的四种Set操作。

  • UNION ALL:把左表和右表合成一张表并返回;
  • UNION:把左表和右表去除重复项后,合成一张表并返回。换言之,UNION的结果集中没有重复项。
  • EXCEPT:去除左表中曾出现在右表中的项,将左表中剩余项返回。换言之,EXCEPT返回一个结果集,其中所有的项都只在左表中出现且并未出现在右表中。
  • INTERSECT:返回左表和右表都出现过的项。

示例一,找出所有没有生成Order的Customer:

SELECT [ID] FROM CustomersEXCEPTSELECT [ID] FROM Orders;GO

示例二,找出所有既是Customer又是Vendor:

SELECT [ID] FROM CustomersINTERSECTSELECT [ID] FROM Vendors;GO

是为之记。
Alva Chien
2016.6.15

1 0
原创粉丝点击