with t as( select distinct id, name, sum(grade_num) over(partition by user_id) grade_num from user u right join grade_info g on u.id=g.user_id ), t1 as( select id,name,grade_num, dense_rank() over(order by grade_num desc) r from t ) select id, name, grade_num from t1 where r=1