题解 | #获得积分最多的人(一)#
获得积分最多的人(一)
http://www.nowcoder.com/practice/1bfe3870034e4efeb4b4aa6711316c3b
本题写法:
select name, sum(g.grade_num)over(partition by g.user_id)as grade_sum from user as u,grade_info as g where u.id=g.user_id order by grade_sum desc limit 1;
主要考察窗口函数的用法,我们累加每个用户的积分和,进行倒排,然后限制输出第一条数据,即为获得积分最多的人。