题解 | #获得积分最多的人(三)#
获得积分最多的人(三)
https://www.nowcoder.com/practice/d2b7e2a305a7499fb310dc82a43820e8
select u.id, u.name, sum(if (g.type = 'add', g.grade_num, - g.grade_num)) as grade_num from user u left join grade_info g on u.id = g.user_id group by u.id, u.name having grade_num = ( select max(grade_num) from ( select u.id, sum(if (g.type = 'add', g.grade_num, - g.grade_num)) as grade_num from user u left join grade_info g on u.id = g.user_id group by u.id ) t ) order by grade_num desc, id;