--有并列
SELECT DENSE_RANK() OVER(PARTITION BY CS.课程名称 ORDER BY CS.成绩 DESC ) 排名 ,* FROM dbo.ClassScore AS CS
--无并列
SELECT ROW_NUMBER() OVER(PARTITION BY CS.课程名称 ORDER BY CS.成绩 DESC ) 排名 ,* FROM dbo.ClassScore AS CS
--有并列占排名数
SELECT RANK() OVER(PARTITION BY CS.课程名称 ORDER BY CS.成绩 DESC ) 排名 ,* FROM dbo.ClassScore AS CS