LeetCode(数据库)- 超过5名学生的课

阅读 79

2022-05-18


题目链接:​​点击打开链接​​


题目大意:略。


解题思路:解决方案(2),注:​​COUNT(student)​​​ 不能直接在 ​​WHERE​​​ 子句中使用,这里将其重命名为 ​​num​​。


AC 代码

-- 解决方案(1)
SELECT rs.class
FROM (SELECT DISTINCT student, class FROM courses) rs
GROUP BY rs.class
HAVING COUNT(1) >= 5

-- 解决方案(2)
SELECT
class
FROM
(SELECT
class, COUNT(DISTINCT student) AS num
FROM
courses
GROUP BY class) AS temp_table
WHERE
num >= 5;

-- 解决方案(3)
SELECT
class
FROM
courses
GROUP BY class
HAVING COUNT(DISTINCT student) >= 5;


精彩评论(0)

0 0 举报