sql 学生信息表S(sno,sname)

问题描述:
现有3张表:分别是
学生信息表S(sno,sname)
课程信息表C(cno,cname,cteacher)
学生与课程关系表SC(sno,cno,scroce)
问题1:查询出所有未选修过李明老师所教课程的学生姓名.
问题2:查询出有2门以上未及格的学生姓名
问题3:查询出既选修课程"1"也选修了课程"2"的学生姓名

主要考察:group by 和inner join ,having条件筛选,以及count函数的使用
group by 主要是对结果集进行分组,然后采用having搭配使用进行数据的筛选,

drop table S,SC,C
create table S(
 sno varchar(15),   --学号
 sname varchar(15)   --学生姓名
)
create table C(
 cno varchar(15),   --课程编号
 cname varchar(15),   --课程名称
 cteacher varchar(15)  --授课教师
)
create table SC(
 sno varchar(15),   --学号
 cno varchar(15),   --课程编号
 scroce float    --分数
)

select * from S;
delete from S;
insert into S(sno,sname)values('s001','jerry');
insert into S(sno,sname)values('s002','tom');
insert into S(sno,sname)values('s003','jason');

delete from C;
select * from C;
insert into C(cno,cname,cteacher)values('c001','1','李明');
insert into C(cno,cname,cteacher)values('c002','2','李明0');
insert into C(cno,cname,cteacher)values('c003','3','李明1');
insert into C(cno,cname,cteacher)values('c004','4','李明2');

delete from SC;
select * from SC;
insert into SC(sno,cno,scroce)values('s001','c001',40);
insert into SC(sno,cno,scroce)values('s001','c002',50);
insert into SC(sno,cno,scroce)values('s002','c001',50);
insert into SC(sno,cno,scroce)values('s002','c003',50);

 

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值