练习SQL经典50题(三)

这篇博客更新了SQL经典练习的第21-30题,涵盖了查询性别比例、特定字符学生信息、同名学生统计、特定年份出生学生、课程平均成绩排名、高分学生、低分数学课程、全学生课程分数、70分以上成绩和不及格课程等实用查询技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

更新SQL经典50题的第21-30题,这10题都比较简单,具体程序和运行结果如下所示:

  1. 查询男生、女生人数;
select ssex,count(sid) 人数
from Student 
group by ssex;

在这里插入图片描述

  1. 查询名字中含有「风」字的学生信息;
select * 
from Student
where sname like '%风%';

在这里插入图片描述

  1. 查询同名学生名单,并统计同名人数;
select sname,count(sid) 人数
from Student
group by sname
having count(sid)>1;

在这里插入图片描述

  1. 查询 1990 年出生的学生名单;
select *
from Student
where year(sage)=1990;

在这里插入图片描述

  1. 查询每门课程的平均成绩,结果按平均成绩降序排列,平均成绩相同时,按课程编号升序排列;
select c.cid,c.cname,avg(score) 平均成绩
from Course c left join SC
on c.cid=SC.cid
group by c.cid,c.cname
order by 平均成绩 desc,cid asc;

在这里插入图片描述

  1. 查询平均成绩大于等于 85 的所有学生的学号、姓名和平均成绩;
select s.sid,s.sname,avg(score) 平均成绩
from Student s left join SC
on s.sid=SC.sid
group by s.sid,s.sname
having avg(score)>=85;

在这里插入图片描述

  1. 查询课程名称为「数学」,且分数低于 60 的学生姓名和分数;
select s.sname,SC.score
from Student s,SC,Course c
where s.sid=SC.sid and c.cid=SC.cid
and c.cname='数学' and SC.score<60;

在这里插入图片描述

  1. 查询所有学生的课程及分数情况(存在学生没成绩,没选课的情况);
select s.sid,s.sname,c.cname,SC.score
from Student s left join SC on s.sid=SC.sid
left join Course c on SC.cid=c.cid;

在这里插入图片描述
29. 查询任何一门课程成绩在 70 分以上的学生姓名、课程名称和分数;

select s.sname,c.cname,SC.score
from SC,Student s,Course c
where SC.sid=s.sid and SC.cid=c.cid
and s.sid in(
select sid from SC
group by sid
having max(score)>70);

在这里插入图片描述

  1. 查询存在不及格的课程;
select c.cid,c.cname
from Course c left join SC 
on c.cid=SC.cid
group by c.cid,c.cname
having min(score)<60;

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值