Junior — Middle
87
Koja je razlika između korišćenja HAVING i WHERE prilikom rada sa SQL upitima?
Компаније где су питане
ИнфоТехСервис
ООО Корпорация ЗНАК
Одговор од АИ
sobes.tech АИ
В 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 — с результатами агрегирования.