logo
Vvedenie_v_Veb_programmirovanien_2 / Vvedenie_v_Veb_programmirovanien_2

Секция having

На промежуточные итоги может быть наложен дополнительный фильтр посредством секции HAVING. В ниже приведенном примере в результат попадут только отделы, максимальная зарплата в которых превышает 1000 у.е.:

SELECT DeptNum, MAX(SALARY)

FROM Employees

GROUP BY DeptNum

HAVING MAX(SALARY) > 1000

Важно понимать, что секции HAVING и WHERE взаимно дополняют друг друга. Сначала с помощью ограничений WHERE формируется итоговая выборка, затем выполняется разбивка на группы по значениям полей, заданных в GROUP BY. Далее по каждой группе вычисляется групповая функция и в заключение накладывается условие HAVING.