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

获得积分最多的人(三)

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

select d.user_id,user.name,d.new
from (
    select c.user_id,c.new
    from (
        select *,rank() over(order by b.new desc) as 'rk'
        from (
            select a.user_id,sum(a.new) as 'new'
            from (
                select *,
                    case when type = 'reduce' 
                    then -grade_num 
                    else grade_num 
                    end as 'new'
                from grade_info
                )a
            group by a.user_id)b)c
    where c.rk = 1
    order by c.user_id)d
left join user
on d.user_id = user.id

全部评论

相关推荐

给个offer灞:校友 是不是金die
点赞 评论 收藏
分享
10-15 10:23
门头沟学院 Java
牛可乐的头像真牛:赶紧举报,这公司绝对是诈骗的,等你签约后工作一两个月后根据合同漏洞把你开除,并且要求你赔偿3w培训费,996是为了提前筛选心甘情愿签下合同容易受骗的群体,纯粹面向校招生精心设计的骗局
你见过哪些工贼行为
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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