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

MongoDB agregado () - erro TypeError:não é possível chamar o método 'forEach' de indefinido


Você precisa executá-lo sem o result acesso variável. O cursor retornado pelo mongodb quando acessado no shell , não tem uma propriedade chamada result e, portanto, você obtém o erro.
db.contracts.aggregate([
  { $match: { regionCode: '77' } },
  { $unwind: '$products' },
  { 
    $project: {  
      _id: '$_id',
      regNum: '$regNum',  
      prodName: '$products.name',  
      prodPrice: '$products.price'
    }
  },
  { $match: { 'prodName' : 'Water' } }
], {cursor:{}}).forEach(printjson);