选择不同的条目需要帮助

时间:2016-03-20 04:33:17

标签: mysql sql database oracle

我试图选择并仅列出注册了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

1 个答案:

答案 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子句的一部分。

Learn more on distinct and group by