Запропонувати правкуПокращити цю статтюДопрацюйте відповідь до «Що робить стадія $group?». Ваші зміни проходять модерацію перед публікацією.Потрібне підтвердженняКонтентЩо ви змінюєте🇺🇸EN🇺🇦UAПереглядЗаголовок (UA)Коротка відповідь (UA)Стадія `$group` групує документи за одним чи кількома полями й дозволяє обчислювати агрегати - суму, кількість, максимум, мінімум, середнє тощо; це аналог `GROUP BY` в SQL, а полем `_id` тут завжди виступає ключ групування. **Ключове:** результатом стають нові документи, по одному на кожну групу, а все, що не входить у `_id`, має бути агрегатною операцією (`$sum`, `$avg`, `$max`, `$min`, `$push` тощо).Показується над повною відповіддю для швидкого нагадування.Відповідь (UA)ЗображенняСтадія `$group` **групує документи за одним чи кількома полями** і дозволяє обчислювати агрегати - суму, кількість, максимум, мінімум, середнє тощо. Це аналог `GROUP BY` в SQL. ### Що відбувається всередині - документи об'єднуються за ключем (полем, вказаним у `_id`) - по кожній групі рахуються агрегатні значення (`$sum`, `$avg`, `$max`, `$min`, `$push` та ін.) - результатом стають **нові документи**, по одному на кожну групу ### Приклад ```js { $group: { _id: "$status", total: { $sum: 1 } } } ``` Результат: кількість документів у кожній групі за `status`. ### Ключовий момент У `$group` поле `_id` - це **ключ групування**. Усе, що не в `_id`, має бути агрегатною операцією. ### Підсумок `$group` - стадія, яка збирає документи в групи й обчислює підсумкові значення по кожній групі, формуючи агреговані дані.Для рев’юераПримітка для модератора (необов’язково)Бачить лише модератор. Прискорює рев’ю.