# 运用左连接将每一个用户的积分变化记录查找出来
with t1 as (
select user_id as id, b.name,
(case when a.type = 'add' then grade_num else -grade_num end) as jifen_change
from grade_info as a
left join user as b
on a.user_id = b.id
),
t2 as (
select id, name, sum(jifen_change) as grade_num
from t1
group by id, name
order by id
)
select *
from t2
where grade_num = (
select max(grade_num) as grade_num
from t2
);

京公网安备 11010502036488号