2016-03-20 3 views
1

Я пытаюсь выбрать и список только курсы, где зарегистрировано более 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

Try включая точную ошибку вы получаете –

ответ

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

+0

спасибо большое :), что помогло ... – prodigy09

+0

Вы можете. Рад это услышать :) @ prodigy09 – 1000111

Смежные вопросы