我试图选择并仅列出注册了2名以上学生的课程,我执行了以下查询但是它给了我错误,请帮助
SELECT DISTINCT COURSES FROM STUDENTTBL WHEN COUNT(COURSES)>2;
Courses Students
Maths Dave
Maths John
Maths Nancy
Maths Ron
History Dave
History John
History Nancy
Science Dave
Science john
预期输出
Maths
History
答案 0 :(得分:1)
您需要在GROUP BY
上使用COURSES
,然后需要使用2
HAVING
的相应课程数量
SELECT COURSES FROM
STUDENTTBL
GROUP BY COURSES
HAVING COUNT(COURSES)>2;
当您在something
上分组时,您将获得something
的一个条目。
更多强>
Distinct用于从满足查询条件的记录中过滤唯一记录。
Group by子句用于对触发聚合函数的数据进行分组,并根据group by子句中的列返回输出。它有自己的限制,例如,除了聚合函数之外,select查询中的所有列都必须是Group by子句的一部分。