题解 | #查找除复旦大学的用户信息#
找出每个学校GPA最低的同学
http://www.nowcoder.com/practice/90778f5ab7d64d35a40dc1095ff79065
/* 窗口函数语法
时间 2022年3月26日10:44:21
<窗口函数> over (partition by <用于分组的列名> order by <用于排序的列名>)
<窗口函数>的位置,可以放以下两种函数:
专用窗口函数,比如rank, dense_rank, row_number等
rank 如果有并列名次的行,会占用下一名次的位置 1 1 3
dense_rank 如果有并列名次的行,不占用下一名次的位置 1 1 2
row_number 如果有并列名次的行,也不考虑并列名次的情况 1 2 3
聚合函数,如sum. avg, count, max, min等
针对自身记录、以及自身记录之上的所有数据进行计算
*/
题解如下:
# 取出每个学校的最低gpa。 select device_id,university,gpa from (select *, row_number() over (partition by university order by gpa) as rn from user_profile ) as D_upR where D_upR.rn = 1 order by university