MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Grupo MongoDB com vários IDs


Para o $group-operator do MongoDB, nenhum valor também é um valor.

Quando você deseja excluir quaisquer documentos em que nem todas as três chaves estejam presentes, você pode adicionar um $match -passo para seu pipeline de agregação que filtra todos os documentos que não possuem todas essas chaves.
 db.collection.aggregate([
     { $match: { 
         "type" : { "$exists" : true}, 
         "location" : { "$exists" : true}, 
         "language" : { "$exists" : true}
       } 
     },
     { $group: {
         "_id": {
             "location": "$location", 
             "type": "$typ", 
             "language": "$language"
         },
         "count": {$sum: 1}
       }
     }
 ]);