题解 | #找出每个学校GPA最低的同学#
找出每个学校GPA最低的同学
http://www.nowcoder.com/practice/90778f5ab7d64d35a40dc1095ff79065
select device_id, university, gpa from user_profile u1 where gpa<=(select min(gpa) from user_profile u2 where u1.university=u2.university group by university) order by university;
题解: 找到每个学校gpa最低的同学
即 在按学校分组的情况下, 找出各个学校内的最低gpa
即 组内比较
那么, 可以用 关联子查询, 上述code中的关键就是 子查询 where 子句中的
u1.university=u2.university强制SQL在相同学校内比较gpa, 不能跨学校比较最低值
这样就符合我们的题解目标
这不是最好的理解的办法, 但估计是最快的 ^_^