# 首先连接表,筛选出type是add的数据
# 针对 各个人进行积分求和
# 返回最大的
select 
distinct
b.name as name,
b.grade_num as grade_num
from
(select
a.name as name,
a.grade_num as grade_num,
dense_rank() over(order by a.grade_num desc) as ranks
from
(select
u.name as name,
sum(g.grade_num) over(partition by u.id) as grade_num
from
user as u 
inner join
grade_info as g
on 
u.id = g.user_id
where
g.type = 'add') a) b 
where
b.ranks = 1