SQL Заявление: Group BY не работает так, как это необходимо для - PullRequest
0 голосов
/ 01 апреля 2020

Я пытаюсь подсчитать количество студентов, которые отсутствуют в определенный день. Я собираюсь предоставить образец представления здесь:

enter image description here

Я пытаюсь получить счетчик, который показывает мне School_Name, Absent_Date, Имя и Student_ID из приведенных выше данных, где студент пропустил более или равно 4 периодам.

Мое утверждение SQL выглядит следующим образом:

SELECT [PERIOD], [Student_ID], [ABS_DATE]  
FROM t_database
GROUP BY [Bell_Period]  
HAVING COUNT(*) >= 4

Однако оно не показывает этого, я не работал со сценарием, таким как этот, поэтому любая помощь будет оценена ,

1 Ответ

0 голосов
/ 01 апреля 2020

Вам нужно сгруппировать по столбцам, которые вы хотите в результате, и агрегировать (здесь - считать) по тем, которые вы не:

SELECT   school_name, absent_date, name, student_id
FROM     t_database
GROUP BY school_name, absent_date, name, student_id
HAVING   COUNT(*) >= 4
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...