资源描述:
《DB2 INTERSECT、EXCEPT、UNION集合操作测试.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、DB2INTERSECT、EXCEPT、UNION集合操作测试DB2INTERSECT、EXCEPT、UNION集合操作测试说明:DB2支持三种集合操作INTERSECT(交集)、EXCEPT(差集)、UNION(合集),在ORACLE等数据库里面也有类似的操作,但是细微的地方可能有些差别,现在专门测试一下,以求准确!玩数据千万要细心啊,否则会带来难以意料的结果,呵呵!测试环境:DROPTABLEAA_WEEK;CREATETABLEAA_WEEK(CODESMALLINTNOTNULL,EN_NAME
2、VARCHAR(20)NOTNULL,ABBVARCHAR(20),CONSTRAINTP_AA_WEEK_CODEPRIMARYKEY(CODE));COMMENTONTABLEAA_WEEKIS'星期';COMMENTONAA_WEEK(CODEIS'星期代码',EN_NAMEIS'英文星期名',ABBIS'英文缩写');INSERTINTOAA_WEEKVALUES(1,'Monday','Mon'),(2,'Tuesday','Tues'),(3,'Wednesday','Wed'),(4,'T
3、hursday','Thurs'),(5,'Friday','Friday'),(6,'Saturday','Sat'),(7,'Sunday','Sun');COMMIT;查询一把,看看所有数据:SELECT*FROMAA_WEEK;+------+-----------+--------+
4、CODE
5、EN_NAME
6、ABB
7、+------+-----------+--------+
8、1
9、Monday
10、Mon
11、
12、2
13、Tuesday
14、Tues
15、
16、3
17、Wednesday
18、Wed
19、
20、4
21、Thursday
22、T
23、hurs
24、
25、5
26、Friday
27、Friday
28、
29、6
30、Saturday
31、Sat
32、
33、7
34、Sunday
35、Sun
36、+---------+------------+---------+一、交集运算:INTERSECT、INTERSECTALL--求交集:A交BSELECT*FROMAA_WEEKXWHEREX.CODEIN(1,2,3)--集合AINTERSECT--集合BSELECT*FROMAA_WEEKXWHEREX.CODEIN(2,3,4);--------------------------------
37、-2'Tuesday''Tues'3'Wednesday''Wed'说明:INTERSECT和INTERSECTALL是等效的。二、差集运算:EXCEPT、EXCEPTALL--求差集:A减BSELECT*FROMAA_WEEKXWHEREX.CODEIN(1,2,3)--集合AEXCEPT--集合BSELECT*FROMAA_WEEKwWHEREw.CODEIN(2,3,4);说明:EXCEPT和EXCEPTALL是等效的。---------------------------------1'Mond
38、ay''Mon'三、合集运算:UNION、UNIONALL--求合集:A+B(不消除重复行)SELECT*FROMAA_WEEKXWHEREX.CODEIN(1,2,3)--集合AUNIONALL--集合BSELECT*FROMAA_WEEKXWHEREX.CODEIN(2,3,4);---------------------------------------2'Tuesday''Tues'3'Wednesday''Wed'4'Thursday''Thurs'1'Monday''Mon'2'Tuesd
39、ay''Tues'3'Wednesday''Wed'--求合集:A+B(消除重复行)SELECT*FROMAA_WEEKXWHEREX.CODEIN(1,2,3)--集合AUNION--集合BSELECT*FROMAA_WEEKXWHEREX.CODEIN(2,3,4);---------------------------------1'Monday''Mon'4'Thursday''Thurs'2'Tuesday''Tues'3'Wednesday''Wed'说明:UNION和UNIONALL是不同
40、的。UNION消除重复行记录,UNIONALL不消除重复行记录。