基本SQL操作(一)

为管理岗位业务培训信息,建立3个表:

S (SID,SN,SD,SA) SID,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄

C (CID,CN ) CID,CN 分别代表课程编号、课程名称

SC ( SID,CID,G ) SID,CID,G 分别代表学号、所选修的课程编号、学习成绩

1. 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名

-----选修课程名为‘税收基础’的学员学号和姓名
select sid,sn from s where sid in(select sid from c,sc where c.cid=sc.cid and cn='税收基础')

2. 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位

---选修课程编号为‘c2’的姓名和单位
select sn,sd from s,sc where s.sid=sc.sid and cid='c2'

4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位

-----选修全部课程的姓名和部门
select sn,sd from (select A.sid from ((select sid,count(sid) as cc from sc group by sid) as A inner join (select count(*) as cc from c) as B on A.cc=B.cc)) as C left join s on s.sid=C.sid

3. 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位

---不选修课程编号为‘c5’的学员姓名和单位
select sn,sd from s where sid not in (select sid from sc where cid='c5')

5. 查询选修了课程的学员人数

----选修课程的学员人数
select count(distinct sid) from sc

6. 查询选修课程超过5门的学员学号和所属单位

---选修课程超过5门的学员姓名和单位
select sn,sd from s
where sid in (select sid from sc group by sid having count(distinct cid)>5)

posted @ 2008-03-23 21:36  jinweida  阅读(337)  评论(0编辑  收藏  举报