Ответ
GROUP BY в SQL используется для группировки строк с одинаковыми значениями в указанных столбцах. Это часто применяется с агрегатными функциями (COUNT, SUM, AVG, MAX, MIN и т. д.) для выполнения вычислений по каждой группе.
Пример:
SELECT department, COUNT(*) as employee_count
FROM employees
GROUP BY department;
Этот запрос вернёт количество сотрудников в каждом отделе.
Нюансы:
- В
SELECTможно указывать только столбцы изGROUP BYили агрегатные функции. - Для фильтрации групп используется
HAVING(аналогWHEREдля групп). - Порядок группировки можно задать через
ORDER BY.
Пример с HAVING:
SELECT department, AVG(salary) as avg_salary
FROM employees
GROUP BY department
HAVING AVG(salary) > 50000;