Встречается на собеседованиях • сегодня

Что такое HAVING в SQL

HAVING — это условие фильтрации для агрегированных данных, аналогичное WHERE, но применяемое после группировки (GROUP BY). В отличие от WHERE, которое фильтрует строки до агрегирования, HAVING работает с результатами агрегатных функций (SUM, AVG, COUNT и т.д.).

Пример:

sql
SELECT department, AVG(salary) as avg_salary
FROM employees
GROUP BY department
HAVING AVG(salary) > 50000;

Здесь HAVING отфильтровывает отделы, где средняя зарплата меньше 50 000.

Ключевые отличия:

  • WHERE фильтрует до группировки, HAVING — после.
  • HAVING может использовать агрегатные функции, WHERE — нет.
  • HAVING всегда идет после GROUP BY.

Важно: Если HAVING используется без GROUP BY, он применяется ко всему набору строк как одна группа.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы