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

获得积分最多的人(三)

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

知识点

  1. 和上一题代码思路一模一样就是求和的时候使用case when函数,当type是reduce的时候是grade_num*-1否则就是grade_num,其他都一样。

代码

with a as(
          select distinct u.id,u.name,
          sum(case type when 'reduce' then grade_num * -1
              else grade_num end) over(partition by g.user_id)as grade_sum
          from user as u
          join grade_info as g
          on u.id=g.user_id)
select * from a
where a.grade_sum=(select max(a.grade_sum) from a)
order by a.id
全部评论

相关推荐

程序员花海_:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
故事和酒66:小米现在校招很多都是在高校搞小米训练营,然后直接挑人,大四就去实习,所以实际上校招总名额是变少了的。同学211本无经验经过两周培训直接签了
秋招,不懂就问
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

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