Что такое GROUP BY
Python
Middle
Без компании
Что такое GROUP BY
Ответы
`GROUP BY` в SQL (и аналоги в ORM, например, Django) группирует строки по указанным столбцам, применяя агрегатные функции (COUNT, SUM, AVG и т.д.) к каждой группе.
**Пример SQL:**
```
SELECT department, COUNT(*) as employees_count
FROM employees
GROUP BY department;
```
Выведет количество сотрудников в каждом департаменте.
**В Django ORM:**
```
from django.db.models import Count
Employee.objects.values('department').annotate(employees_count=Count('id'))
```
**Нюансы:**
- Столбцы в `SELECT` должны быть либо в `GROUP BY`, либо агрегированы.
- `GROUP BY` выполняется после `WHERE`, но до `HAVING` (фильтрация групп).
- В Python (Pandas) аналог — `df.groupby('column').agg(...)`.