with total_grade as (
    select 
        user_id,
        sum(grade_num) as grade_num,
        dense_rank() over (order by sum(grade_num) desc) as rn
    from 
        grade_info
    group by 
        user_id
)

select
    u.id,
    u.name,
    t_g.grade_num
from 
    total_grade as t_g
left join 
    user as u
on 
    t_g.user_id = u.id
where 
    t_g.rn = 1
order by 
    u.id