select device_id,university,gpa from (
    select device_id,university,gpa,
    dense_rank() over(partition by university order by gpa) as ranking
    from user_profile) t
where ranking = 1 
order by university

当结果出现了分组之外的字段信息的时候,求最值,还是窗口函数简单易理解。

窗口函数的固定句式
rank() over(partition by 分组列 order by 排序列)
重点
对于分数 90、90、80:
rank : 美国排名 1、1、3
dense_rank:中国排名 1、1、2
row_number:顺序排名 1、2、3