SQL Server 的集合操作
SQL的集合操作
属性个数必须一致
对应的类型必须一致
属性名无关
最终结果集采用第一个结果的属性名
缺省为自动去除重复元组
除非显式说明ALL
Order By放在整个语句的最后
并:查询计算机系的学生或者年龄不大于19岁的学生,并按年龄倒排序。
SELECT * FROM student WHERE Sdept=‘CS’
UNION
SELECT * FROM student WHERE AGE<=19
ORDER BY AGE DESC
交:查询计算机系的学生并且年龄不大于岁19的学生,并按年龄倒排序。
(SELECT * FROM student WHERE Sdept=‘CS’)
INTERSECT
( SELECT * FROM student WHERE AGE<=19)
ORDER BY AGE DESC
差:查询选修课程1但没有选修课程2的学生。
SELECTSname , Sdept FROM student
WHERE snoIN
(
( SELECT sno FROM SC WHERE Cno='1')
EXCEPT
( SELECT sno FROM SC WHERE Cno='2')
)