编写一个SQL查询来对分数进行排序。如果在两个得分相同,那两个排名应该是相同的。注意,下一个排名应该是下一个连续的整数值。换句话说,排名之间不应该有间隔。
思路:计算某个分数的排名即:计算比该分数大的元素的个数。
SELECT Scores.Score ,COUNT(Ranking.Score) AS Rank from Scores,(SELECT DISTINCT Score FROM Scores)Ranking WHERE Ranking.Score >= Scores.Score
GROUP BY Scores.Id , Scores.Score
ORDER BY Scores.Score DESC