Jeśli dobrze rozumiem, jesteś tak blisko, sprawdź to zapytanie:
- Pierwsze użycie
$match
aby uzyskać tylko dokumenty, którychsubLevel.id
to 1 lub 2. - Wtedy, jak już zrobiłeś,
$group
przezid
i suma, aby uzyskać całkowitą liczbę:
db.collection.aggregate([
{
"$match": { "subLevel.id": { "$in": [ 1, 2 ] } }
},
{
"$group": { "_id": "$subLevel.id", "count": { "$sum": 1 } }
}
])
Przykład tutaj