这个查询的目的是找出每个大学中 GPA 最低的学生的设备 ID、GPA 和大学名称。

首先,在子查询中,我们使用 GROUP BY 和 MIN 函数来计算每个大学的最低 GPA。这个子查询返回了大学和对应的最低 GPA。

然后,在主查询中,我们使用 WHERE 子句来筛选出具有最低 GPA 的学生,条件是他们的大学和 GPA 在子查询的结果中。

最后,我们使用 GROUP BY 子句对大学进行分组,并选择设备 ID、最低 GPA 和大学名称作为结果。

select device_id, min(gpa), university
from user_profile
where (university, gpa) in (select university, min(gpa) from user_profile group by university)
group by university

这个查询可以理解为以下步骤:

  1. 子查询: 找出每个大学的最低 GPA
    select university, min(gpa) from user_profile group by university
    
  2. 主查询: 筛选出每个大学中具有最低 GPA 的学生
    select device_id, min(gpa), university
    from user_profile
    where (university, gpa) in (子查询结果)
    group by university
    

通过这种方式,我们可以高效地找出每个大学中 GPA 最低的那些学生。

SQL 查询:查找每个大学中 GPA 最低的学生

原文地址: https://www.cveoy.top/t/topic/doyK 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录