问题描述:有三个表: |
S(s#,sn,sd,sa)代表学号,姓名,单位,年龄 |
c(c#,cn)代表课程编号,课程名称 |
SC(s#,c#,g) 学员,课程号,成绩 |
--表一:学员信息表 |
create table s( |
s# varchar (40), |
sn varchar (40), |
sd varchar (40), |
sa varchar (40) |
); |
insert into s values ( '0212' , 'lily' , 'account' , '23' ); |
insert into s values ( '0215' , 'lucy' , 'market' , '26' ); |
insert into s values ( '0213' , 'jack' , 'sales' , '20' ); |
insert into s values ( '0214' , 'donna' , 'manager' , '25' ); |
insert into s values ( '0216' , 'rose' , 'manager' , '28' ); |
insert into s values ( '0217' , 'ann' , 'manager' , '28' ); |
select * from s; |
--表二:课程信息表 |
create table c( |
c# varchar (20), |
cn varchar (20) |
); |
insert into c values ( '002' , '税法' ); |
insert into c values ( '001' , '物理' ); |
insert into c values ( '003' , '财经法规' ); |
insert into c values ( 'C2' , '经济法' ); |
insert into c values ( 'C5' , '行政法' ); |
select * from c; |
--表三:学员成绩表 |
create table sc( |
s# varchar (20), |
c# varchar (20), |
g varchar (20) |
); |
insert into sc values ( '0212' , '002' , '80' ); |
insert into sc values ( '0215' , '003' , '85' ); |
insert into sc values ( '0213' , '002' , '70' ); |
insert into sc values ( '0213' , 'C2' , '90' ); |
insert into sc values ( '0213' , 'C5' , '100' ); |
insert into sc values ( '0213' , '003' , '100' ); |
insert into sc values ( '0213' , '001' , '100' ); |
insert into sc values ( '0214' , '001' , '100' ); |
insert into sc values ( '0216' , '001' , '100' ); |
--1.查询选修了‘税法’这门课程的学员学号和姓名 |
select s1.s#,s1.sn from s s1,c c1,sc sc1 |
where s1.s#=sc1.s# and c1.c#=sc1.c# and c1.cn= '税法' ; |
--2.查询课程编号为C2的学员姓名和单位 |
select sn,sd from s where s# in ( |
select s# from sc where c#= 'C2' ); |
--3.查询不选修c5的学员姓名和单位 |
select sn,sd from s where s# not in ( |
select s# from sc where c# = 'C5' ); |
--4.查询选修了全部课程的学员姓名和单位 |
select sn,sd from s where s# in ( |
select ss.s# from |
( select s# , count ( distinct c#) cc |
from sc group by s#) ss where ss.cc= ( select count (*) from c)); |
--5.查询选修了课程的学员人数 |
SELECT COUNT (*) |
FROM S |
WHERE EXISTS( SELECT * FROM SC WHERE SC.s# = s.s#); |
by: 发表于:2017-09-28 14:46:46 顶(1) | 踩(1) 回复
??
回复评论