排名的SQL查询

时间:2012-11-22 02:58:09

标签: sql

任何人都可以帮助我解决这个问题。

studentname sub1 sub2 sub3
abc          10   20   30
def          20   50   70
fsa          20   10   80

结果必须如

StudentName     Rank

提前致谢

1 个答案:

答案 0 :(得分:2)

你可以使用

RANK ( ) OVER ( [ partition_by_clause ] order_by_clause )

在此处查看: RANK (Transact-SQL)

试试这个:如果你想要获得三个科目的大概((sub1 + sub2 + sub3)/ 3)

select StudentName, RANK() OVER  (order by (sub1+sub2+sub3)/3 asc) Rank
from TableName