Für den $group-Operator von MongoDB ist kein Wert auch ein Wert.
Wenn Sie Dokumente ausschließen möchten, in denen nicht alle drei Schlüssel vorhanden sind, können Sie ein $übereinstimmung -Schritt zu Ihrer Aggregationspipeline, die alle Dokumente filtert, die nicht alle diese Schlüssel haben.
db.collection.aggregate([
{ $match: {
"type" : { "$exists" : true},
"location" : { "$exists" : true},
"language" : { "$exists" : true}
}
},
{ $group: {
"_id": {
"location": "$location",
"type": "$typ",
"language": "$language"
},
"count": {$sum: 1}
}
}
]);