查询--集合查询

连接查询--集合查询

一、并操作UNION

union操作的个结果表列数、类型必须相同。重复元组只保留一次

 查询Cs系的学生 或 年龄大于19的学生
 select *
 from Student
 where Sdepe = 'CS'
 union
 select *
 from Student
 where Sage >= '19'
 查询选修了课程1 或者课程2 的学生学号
 select Sno
 from SC
 where Cno = '1'
 union
 select Sno
 from SC
 where Cno  ='2'

 

二、交操作 INTERSECT

 查询Cs系的学生 且 年龄大于19的学生
 select *
 from Student
 where Sdepe = 'CS'
 intersect
 select *
 from Student
 where Sage>='19'

 

三、差操作 MINUS

在Sqlserve中用EXCEPT

 查询没选择一号课程的学生学号
 select Sno,Sname
 from Student
 Except
 select Student.Sno,Sname
 from Student,SC
 where Student .Sno = Sc.Sno and Cno = '1'
 
 查询选了1号课但没选2号课的学生学号
 select Sno
 from SC
 where Cno='2'
 except
 select Sno
 from SC
 where Cno='1'
 
posted @ 2022-04-27 10:00  山上的树  阅读(144)  评论(0)    收藏  举报