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

获得积分最多的人(三)

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

SELECT id, name, grade_sum
FROM
(SELECT user_id, 
grade_sum, 
DENSE_RANK() OVER(ORDER BY grade_sum DESC) AS 't_rank'
FROM
(SELECT user_id, 
(SUM(IF(type = 'add', grade_num, 0))-SUM(IF(type = 'reduce', grade_num, 0))) AS 'grade_sum'
FROM grade_info
GROUP BY user_id) t1) t2,
user u
WHERE t2.user_id = u.id AND t_rank = 1
ORDER BY id;
全部评论

相关推荐

点赞 评论 收藏
分享
死在JAVA的王小美:哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈,我也是,让我免了一轮,但是硬气拒绝了
点赞 评论 收藏
分享
Java抽象带篮子:难蚌,点进图片上面就是我的大头😆
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务