mysql查询各科成绩前两名_mysql 查询:同名同姓、成绩相同、成绩最好的前两名...

ER图

4a5ba7cd036a0f948f72d2f2fde4a036.png

student表

ab1f5f079ca0c00c7784516ad88f7872.png

score 表

901c9d067f47fdf84efce4e39b59daf3.png

1-- 查询学过"张三"老师授课的同学的信息

select s.* ,t_name from student s left join score sc on s.s_id = sc.s_id
left join course c on sc.c_id = c.c_id
left join teacher t on c.t_id = t.t_id
where t_name = '张三';

2-- 查询同名同性学生名单,并统计同名人数

select s_name,s_sex,count(s_name) 
from student
group by s_name,s_sex
having count(s_name)>1;

3-- 查询不同课程成绩相同的学生的学生编号、课程编号、学生成绩

select sc1.*
from score sc1 ,score sc2 
where sc1.s_id=sc2.s_id and sc1.score=sc2.score and sc1.c_id<>sc2.c_id
group by sc1.s_id, sc1.c_id;

4 -- 查询每门课程成绩最好的前两名

select * from score sc1 where (select count(*) from score sc2 where sc1.c_id = sc2.c_id and
sc1.score <= sc2.score) <3
order by sc1.c_id , sc1.score desc;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值