之前我写过不用函数求分组后每组销量前两名的方法,可以参考这一篇。这种方式会稍微复杂一些。
Mysql-group by分组后取每组销量前两名
刷牛客网后,发现可以使用row_number() over()函数快速查出每组的最低分。
select device_id,university,gpa
from
(
select *,
row_number() over (partition by university order by gpa) as rn
from user_profile) as univ_min
where univ_min.rn=1