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

获得积分最多的人(二)

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

主要根据2号网友得出的解题思路,里面加了一点自己的理解
select u.id,name,g   #---4.最后写需要查找的字段
from
(select user_id,g,rank() over(order by g desc) r  #---2.对t1表的累计积分使用rank() over()进行排序
from
(select distinct user_id,
sum(grade_num) over(partition by user_id) g 
from grade_info
) t1)t2      #--- 1.先写出t1表,通过sum()over()计算出每位用户的累计积分并去重。
join user u   #--- 3.与用户信息表连接,得到姓名信息
on t2.user_id = u.id
where t2.r = 1  #---5.根据题目要求,对数据进行限制
order by u.id

全部评论

相关推荐

oppo 应用软开 22*15+0.5*12
拿到了ssp完美:真的坎坷,但是你至少拿到这么多offer了!
点赞 评论 收藏
分享
11-28 17:48
中山大学 C++
点赞 评论 收藏
分享
点赞 评论 收藏
分享
霁华Tel:秋招结束了,好累。我自编了一篇对话,语言别人看不懂,我觉得有某种力量在控制我的身体,我明明觉得有些东西就在眼前,但身边的人却说啥也没有,有神秘人通过电视,手机等在暗暗的给我发信号,我有时候会突然觉得身体的某一部分不属于我了。面对不同的人或场合,我表现出不一样的自己,以至于都不知道自己到底是什么样子的人。我觉得我已经做的很好,不需要其他人的建议和批评,我有些时候难以控制的兴奋,但是呼吸都让人开心。
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务