Om jag har förstått det rätt, du är så nära, kolla den här frågan:
- Använd
$match
först för att bara få dokument varssubLevel.id
är 1 eller 2. - Sedan, som du har gjort,
$group
medid
och summa för att få totalt antal:
db.collection.aggregate([
{
"$match": { "subLevel.id": { "$in": [ 1, 2 ] } }
},
{
"$group": { "_id": "$subLevel.id", "count": { "$sum": 1 } }
}
])
Exempel här