找最大中的任意一个
有这样一个表
学号 班级 成绩
-------------------------
1 1 70
2 1 71
3 1 72
4 2 73
5 2 75
6 2 75
想得到每个班级成绩最高的那个人的学号,如果最高成绩有N个人,任意取其中一个
学号
------
3
6
这里由于学号5,6的成绩一样,所以取5也行,取6也行
谢谢了
------解决方案--------------------
select 学号
from
(
select *,
ROW_NUMBER() over(partition by 班级 order by 成绩 desc) as rownum
from t
)a
where rownum = 1