SQL LeetCode刷题系列(四)——超过5名学生的课

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/liuzuoping/article/details/102488878

题目描述

有一个courses 表 ,有: student (学生) 和 class (课程)。

请列出所有超过或等于5名学生的课。

例如,表:
在这里插入图片描述
应该输出:
在这里插入图片描述Note:
学生在每个课中不应被重复计算

题解

SELECT class
FROM courses
GROUP BY class
HAVING COUNT(DISTINCT student)>=5;

思路解析

需要注意的是学生在每个课中可能会被重复计算,所以
SELECT class
FROM courses
GROUP BY class
之后还要
HAVING COUNT(DISTINCT student)>=5;
DISTINCT一定要加

猜你喜欢

转载自blog.csdn.net/liuzuoping/article/details/102488878