SELECT
user_id,
name,
grade_num
FROM(
    select 
    user_id,
    name,
    SUM(case when type = 'add' then grade_num
        when type = 'reduce' THEN -1*grade_num 
    END) AS grade_num,
    rank() over(order by SUM(case when type = 'add' then grade_num
        when type = 'reduce' THEN -1*grade_num 
    END) desc) AS T
    from 
    grade_info u1
    LEFT JOIN user U ON U.id = u1.user_id
    GROUP BY user_id,name
) AS GH 
WHERE GH.T = 1
全部评论

相关推荐

牛至超人:哈工大已经很棒了,不需要加括号了,然后咋没有实习经历呢?火速趁寒假整一段实习,导师不让就狠狠肘击
投了多少份简历才上岸
点赞 评论 收藏
分享
燕山北:项目写点监控 可视化 高可用 自动化 不要总是写部署过什么,写点能够体现水平的
投了多少份简历才上岸
点赞 评论 收藏
分享
评论
3
1
分享

创作者周榜

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