SQl语句查询某门成绩最低的学生的编号姓名 该科目的成绩?

本文介绍了一种使用SQL查询特定课程中分数最低的学生的方法,包括学生的ID、姓名及成绩,通过左连接和子查询技巧精确筛选出目标学生。

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

查询某个课程分数最低的同学的编号、姓名、该科目的成绩?

select s.id,s.name,sc.score 
from student s
left join sc on s.id = sc.sid
-- 5.保证查出来的只有数学那一门成绩,而不是把满足数学成绩最低的学生的所有科目都展示出来
left join course c on sc.cid = c.id 
-- 4. 查询出来满足数学成绩最低的学生的所有科目成绩,又只想要数学成绩,再联立课程表
where s.id in( 
-- 2.找出科目成绩含80分的学生的id
	select sid from sc where score in( 
			-- 1.查出数学这门课的最低分是80,这句话给出分数的限定为80分
			select min(sc.score) from sc left join course c on sc.cid = c.id where c.name = '数学')\
		-- 3.找出科目成绩考80分中,数学成绩为80分的学生信息	
	and cid in(select id from course where name='数学')) 
	-- 对应step5的最终筛选出来只展示数学成绩
and c.name = '数学';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值