数据库查询-请列出所有超过或等于5名学生的课

本文介绍了如何使用SQL进行分组查询以找出至少有5名学生的课程,并确保每位学生仅被计算一次。首先按课程分组,然后应用HAVING子句过滤出符合条件的课程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

解题思路:

1.按相同的类型分组:

select class from courses group by class

2.满足“超过或等于5名学生的课”的条件:

select class from courses group by class having count(class) >= 5

3.满足‘学生在每个课中不应被重复计算’:

select class from (select distinct * from courses) as c group by c.class having count(class)>=5

若select distinct class from courses group by class having count(class) >= 5,只是把class重复的去掉了,学生的不重复计算条件不满足