Junior — Middle
80
SQL-да HAVING және WHERE шарттарын қолданудың айырмашылығы неде?
Сұралған компаниялар
ИнфоТехСервис
ООО Корпорация ЗНАК
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 — с результатами агрегирования.