第四天【15-18题】
-
15.按各科成绩进行排序,并显示排名, Score 重复时保留名次空缺
SELECT SId,CId,score,
@rank:=@rank+1 AS rn
FROM sc,(SELECT @rank:=0) a
ORDER BY score DESC;
返回结果
-
15.1 按各科成绩进行排序,并显示排名, Score 重复时合并名次
SELECT *,
CASE WHEN @sco=score THEN @rank ELSE @rank:=@rank+1 END AS rn,
@sco:=score
FROM sc,(SELECT @rank:=0,@sco:=NULL) t
ORDER BY score DESC;
返回结果
-
16.查询学生的总成绩,并进行排名,总分重复时保留名次空缺