最后一题以做对结束!
SELECT user.id, user.name, t.grade_sum
from(
SELECT user_id, sum(gn) grade_sum,
dense_rank() over( order by sum(gn) desc) rnk
from
(select user_id,
(case when type='add' then grade_num
else (-grade_num) end) gn
from grade_info) t
GROUP BY user_id
) t
JOIN user
ON t.user_id=user.id
where t.rnk='1'
order by user.id
京公网安备 11010502036488号