Для подсчёта количества сотрудников по отделам используем MongoDB aggregation pipeline со стадией $group.
db.employees.aggregate([
{ $group: { _id: "$department", count: { $sum: 1 } } }
])
aggregate() — запускает aggregation pipeline на коллекции employees$group — группирует документы по указанному ключу_id: "$department" — определяет поле группировки; каждый уникальный отдел становится отдельной группойcount: { $sum: 1 } — увеличивает счётчик на 1 для каждого документа в группе, выдавая общее количество сотрудников[
{ _id: "Engineering", count: 15 },
{ _id: "Marketing", count: 8 },
{ _id: "HR", count: 5 }
]
$group — основная стадия для задач агрегации и группировки$sum: 1 — стандартный паттерн для подсчёта документов внутри группы$sort или $match для дальнейшей фильтрации или сортировки результатовПоле _id на этапе $group указывает, по какому полю группировать, и каждое уникальное значение этого поля создаёт отдельную группу в результате.
Новый — ещё не проверен сообществом
Вы