题解 | 获得积分最多的人(三)

获得积分最多的人(三)

https://www.nowcoder.com/practice/d2b7e2a305a7499fb310dc82a43820e8

with t as (
    select user_id,case when type = 'add' then grade_num when type= 'reduce' then grade_num*(-1) end as grade_num
    from grade_info
),
t1 as (
    select u.id,u.name,sum(t.grade_num) over(partition by t.user_id) grade_num
    from user u
    join t on u.id = t.user_id
)
select distinct id,name,grade_num
from t1
where grade_num = (select max(grade_num) from t1)
order by id

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务