Sobes.tech
Back to questions
Junior — Middle
61

Какой из операторов SQL выполняется раньше: WHERE или HAVING?

Answer from AI

sobes.tech AI

В SQL оператор WHERE выполняется раньше, чем HAVING.

  • WHERE фильтрует строки до группировки (до выполнения GROUP BY).
  • HAVING фильтрует группы после того, как данные были сгруппированы.

Пример:

SELECT department, COUNT(*)
FROM employees
WHERE salary > 50000  -- сначала фильтруем сотрудников с зарплатой больше 50000
GROUP BY department
HAVING COUNT(*) > 10;  -- затем выбираем отделы, где таких сотрудников больше 10