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