Hvis jeg har forstået det rigtigt, du er så tæt på, så tjek denne forespørgsel:
- Brug først
$match
for kun at få dokumenter, hvissubLevel.id
er 1 eller 2. - Derefter, som du har gjort,
$group
ved hjælp afid
og sum for at få det samlede antal:
db.collection.aggregate([
{
"$match": { "subLevel.id": { "$in": [ 1, 2 ] } }
},
{
"$group": { "_id": "$subLevel.id", "count": { "$sum": 1 } }
}
])
Eksempel her