Back to questions
Okko
Рунити
Junior — Middle
62
Чем отличается применение условий HAVING и WHERE при работе с SQL-запросами?
Companies where asked
ИнфоТехСервис
ООО Корпорация ЗНАК
Answer from AI
sobes.tech AI
В SQL WHERE и HAVING используются для фильтрации, но на разных этапах обработки данных:
WHEREфильтрует строки до группировки (доGROUP BY). Он ограничивает набор данных, который будет агрегироваться.HAVINGфильтрует группы после агрегирования. Используется для условий на агрегатные функции, например,SUM(),COUNT().
Пример:
SELECT department, COUNT(*) as employee_count
FROM employees
WHERE salary > 50000 -- фильтруем сотрудников с зарплатой > 50000
GROUP BY department
HAVING COUNT(*) > 10 -- выбираем отделы с более чем 10 такими сотрудниками
Таким образом, WHERE работает с отдельными записями, а HAVING — с результатами агрегирования.