sql语句 次数从大到小排列前5条数据(如果第五名次数有多条,则全部列出来)
SELECT id,
count,
RankNumber
FROM (
SELECT id,
count,
RANK() OVER(ORDER BY count DESC) AS RankNumber
FROM TableName
) AS RankedTable
FROM RankedTable
WHERE RankNumber <= 5
ORDER BY RankNumber
;
如果第一名就有五条数据呢
那就返回5条