Синтаксис GROUP BY и GROUP BY ALL отличается следующим образом:
- GROUP BY собирает в одну строку все выбранные строки, выдающие одинаковые значения для выражений группировки. postgrespro.ru В качестве выражения может выступать имя входного столбца, либо имя или порядковый номер выходного столбца (из списка элементов SELECT), либо произвольное значение, вычисляемое по значениям входных столбцов. postgrespro.ru
- GROUP BY ALL указывает, что для группировки следует использовать все элементы в списке SELECT, не использующие агрегатные функции. stackoverflow.com learn.microsoft.com При этом сохраняются пустые группы, отфильтрованные предложением WHERE. www.osp.ru
Таким образом, основное отличие в том, что GROUP BY фокусируется на конкретной группировке, а GROUP BY ALL — на сохранении всех групп, включая те, которые не соответствуют условию фильтра. www.codingpointer.com www.osp.ru