面试一天一题-sql超过5名学生的课 表:Courses---------------------- | Column Name | Type | ---------------------- | student | varchar | | class | varchar | ---------------------- (student, class)是该表的主键不同值的列的组合。 该表的每一行表示学生的名字和他们注册的课程。查询至少有 5 个学生的所有课程。以任意顺序返回结果表。结果格式如下所示。示例 1:输入:Courses 表: ------------------- | student | class | ------------------- | A | Math | | B | English | | C | Math | | D | Biology | | E | Math | | F | Computer | | G | Math | | H | Math | | I | Math | -------------------输出:--------- | class | --------- | Math | ---------答案group by class分组后-数学课有 6 个学生 -英语课有 1 名学生 -生物课有 1 名学生 -计算机课有 1 个学生再通过count(student)统计人数WHERE不能和GROUP BY的条件聚合函数一起用是因为它们的执行顺序不同。WHERE在数据分组之前执行而GROUP BY的条件比如COUNT(*) 1是在分组之后才能计算出来的所以使用having。select class from Courses group by class having count(student)5