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

获得积分最多的人(二)

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

思路

我的思路:简单易懂

# 1.先找出增加积分最高
select sum(grade_num) as sum from grade_info
where type='add'
group by user_id
order by sum desc
limit 0,1

# 2.找出增加积分最高的用户id和总分(最终代码)
select user.id,user.name,sum(a.grade_num) as grade_sum from grade_info as a
inner join user
on a.user_id=user.id
where a.type='add'
group by a.user_id
having sum(a.grade_num)=(select sum(grade_num) as sum from grade_info
                        where type='add'
                        group by user_id
                        order by sum desc
                        limit 0,1
                      )
order by user.id;
                   

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务