题解 | #找出每个学校GPA最低的同学#
找出每个学校GPA最低的同学
https://www.nowcoder.com/practice/90778f5ab7d64d35a40dc1095ff79065
子查询
select device_id,university,gpa
from user_profile
where (university,gpa) in
(select university,min(gpa) as gpa
from user_profile
group by university)
order by university
内连接 + 子查询
select a.device_id,a.university,a.gpa from user_profile a
join (select university,min(gpa) as gpa
from user_profile
group by university) b
on a.university = b.university and a.gpa = b.gpa
order by university;
窗口函数
select device_id,university,gpa
from
(select device_id,university,gpa,row_number() over(partition by university order by gpa) as number
from user_profile) a
where a.number = 1
order by university