有一个courses
表 ,有: student (学生) 和 class (课程)。sql
请列出全部超过或等于5名学生的课。spa
例如,表:code
+---------+------------+ | student | class | +---------+------------+ | A | Math | | B | English | | C | Math | | D | Biology | | E | Math | | F | Computer | | G | Math | | H | Math | | I | Math | +---------+------------+
应该输出:io
+---------+ | class | +---------+ | Math | +---------+
Note:
学生在每一个课中不该被重复计算。class
答案:select
select tmp.class from ( select DISTINCT student,class from courses )tmp GROUP BY tmp.class HAVING COUNT(tmp.class) >= 5
一开始没看到“学生在每一个课中不该被重复计算。”这句话 ,很难受...co