跳到主要内容

178.分数排名

序号题目难度
178题目链接中等

题目大意​

编写一个解决方案来查询分数的排名。排名按以下规则计算:

分数应按从高到低排列。 如果两个分数相等,那么两个分数的排名应该相同。 在排名相同的分数后,排名数应该是下一个连续的整数。换句话说,排名之间不应该有空缺的数字。 按 score 降序返回结果表。

表: Scores

Column NameType
idint
scoredecimal

id 是该表的主键(有不同值的列)。 该表的每一行都包含了一场比赛的分数。Score 是一个有两位小数点的浮点值。

示例​

输入:​

Scores 表:

idscore
13.50
23.65
34.00
43.85
54.00
63.65

输出​

scorerank
4.001
4.001
3.852
3.653
3.653
3.504

参考答案​

select
score AS Score
,dense_rank() over(order by score desc) as `Rank`
from scores
;