SQL 编程
打印出每个班级的分数前三名的分数(假设所有学生中没有分数相同的情况, 也就是不考虑并列第一第二第三的场景)
表结构:
id varchar(20),-- 编号
class varchar(20),-- 班级
score int-- 分数
select
a.*
from
mscore as a
where
(select
count(*)
from
mscore as b
where
b.class = a.class and b.score >= a.score
) <= 3
order by a.class asc, a.score desc;