Я хотел бы иметь возможность группировать и считать несколько полей в одном запросе. Я пробовал с агрегацией, но не могу заставить ее работать, поэтому любая помощь будет оценена.
У меня есть коллекция с такими документами
[{
_id:ObjectId("abc"),
"who":"person1",
"action":"joined"
},{
_id:ObjectId("def"),
"who":"person2",
"action":"joined"
},{
_id:ObjectId("ghi"),
"who":"person1",
"action":"left"
}]
, и я хотел бы, чтобы вывод был
[{
"who":person1",
"total":2,
"left":1,
"joined":1
},{
"who":person2",
"total":1,
"left":0,
"joined":1
}]
Где total - это счетчик поля действия, а затем подсчитываются две опции для поля действия в зависимости от поля 'who'