题解 | #获得积分最多的人(一)#
获得积分最多的人(一)
https://www.nowcoder.com/practice/1bfe3870034e4efeb4b4aa6711316c3b
-- 解1: select a.name, sum(b.grade_num ) as grade_num from user a left join grade_info b on a.id=b.user_id group by a.name order by grade_num desc limit 1; -- 解2 SELECT u.NAME, b.m FROM USER u LEFT JOIN ( SELECT user_id, m, rank() over ( ORDER BY m DESC ) AS t_rank FROM ( SELECT user_id, sum( grade_num ) AS m FROM grade_info GROUP BY user_id ) t ) AS b ON u.id = b.user_id WHERE b.t_rank = 1;