Как использовать QUERY с GROUP BY для агрегации данных?
=QUERY(A:D; "SELECT A, SUM(D) GROUP BY A") — суммирует столбец D по группам столбца A. Аналог сводной таблицы одной формулой. Поддерживает SUM, AVG, COUNT, MAX, MIN.
QUERY с GROUP BY — мощнейший аналитический инструмент Google Sheets. По сути, это SQL-запрос внутри таблицы.
Синтаксис
=QUERY(данные; "SELECT столбцы, АГРЕГАТ(столбец) GROUP BY столбцы")
Сумма по категориям
=QUERY(A1:D100; "SELECT A, SUM(D) GROUP BY A")
Суммирует продажи (столбец D) по городам (столбец A).
Несколько агрегатов
=QUERY(A1:D100; "SELECT A, SUM(D), AVG(D), COUNT(D) GROUP BY A")
Сумма, среднее и количество по каждой группе.
Группировка по двум столбцам
=QUERY(A1:D100; "SELECT A, B, SUM(D) GROUP BY A, B ORDER BY SUM(D) DESC")
Группирует по городу + менеджеру, сортирует по убыванию суммы.
С фильтрацией
=QUERY(A1:D100; "SELECT A, SUM(D) WHERE C='2025' GROUP BY A HAVING SUM(D) > 100000")
HAVING фильтрует после группировки — только группы с суммой > 100 000.
Доступные функции агрегации
SUM— суммаAVG— среднееCOUNT— количествоMAX/MIN— максимум / минимум