题解 | #找出每个学校GPA最低的同学#

找出每个学校GPA最低的同学

https://www.nowcoder.com/practice/90778f5ab7d64d35a40dc1095ff79065

窗口函数在使用的时候,不用groupby,不用分组聚类;

mysql要求每一个派生出来的表都必须有一个自己的别名,那我给派生表加上别名即可;

select 
device_id,
university,
gpa
from
(
select 
device_id,
university,
gpa,
rank() over (partition by university order by gpa) as rk
from 
user_profile
)as t
where rk = 1
order by university;
  1. 专用窗口函数,比如rank, dense_rank, row_number等
  • rank 如果有并列名次的行,会占用下一名次的位置 1 1 3
  • dense_rank 如果有并列名次的行,不占用下一名次的位置 1 1 2
  • row_number 如果有并列名次的行,也不考虑并列名次的情况 1 2 3

  1. 聚合函数,如sum. avg, count, max, min等
  • 针对自身记录、以及自身记录之上的所有数据进行计算
全部评论

相关推荐

04-03 11:37
武汉大学 Java
高斯林的信徒:武大简历挂?我勒个骚岗
点赞 评论 收藏
分享
1个小白:可以考虑投一下字节
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务