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

获得积分最多的人(三)

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

SELECT DISTINCT(id),NAME,grade_sum FROM user u LEFT JOIN (SELECT ,RANK() OVER (ORDER BY grade_sum DESC) r FROM (SELECT user_id,SUM(g) OVER (PARTITION BY user_id) grade_sum FROM ( SELECT user_id, grade_num, CASE WHEN type='add' THEN grade_num ELSE grade_num-1 END g FROM grade_info) a)b)c

ON u.id=c.user_id WHERE r=1 ORDER BY id ASC

全部评论

相关推荐

10-29 15:51
嘉应学院 Java
后端转测开第一人:你把简历的学历改成北京交通大学 去海投1000份发现基本还是没面试
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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