您的位置:首页 > 其它

UNION, INTERSECT, EXCEPT

2009-11-24 11:56 381 查看
----start

这几个关键字是用来操作集合的。UNION用来求两个集合的并集,INTERSECT用来求两个集合的交集,EXCEPT用来求在第一个集合中存在,而在第二个集合中不存在的记录。每个关键字后面都可以接ALL(UNION ALL, INTERSECT ALL, EXCEPT ALL),如果不接ALL,操作集合将会去掉重复值,下面我们通过一个例子来对比一下它们直接的不同。

---语句1
VALUES ('A'), ('A'), ('B'), ('B'), ('C')
EXCEPT
VALUES ('A'), ('B'), ('B'), ('D'), ('E')
 
---结果:
C
 
 
---语句2
VALUES ('A'), ('B'), ('B'), ('D'), ('E')
EXCEPT
VALUES ('A'), ('A'), ('B'), ('B'), ('C')
 
---结果:
D
E




2、注意它们之间的优先级,EXCEPT 的优先级要高于 UNION 和 INTERSECT,一般情况下如果多个关键字混合使用最好使用括号。

---更多参见:DB2 SQL 精萃

----声明:转载请注明出处。

----last updated on 2009.11.24

----written by ShangBo on 2009.11.24

----end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: