Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

109
Visualizações
mongoDB grupo de mangostas por mes y suma total

Tengo este modelo orderdetails

 const model = new Schema( { district: { type: String }, category: String, producer: String, variety: String, qty: String, price: String, subtotal: String, }, { timestamps: true } );

Quiero obtener el informe de ventas mensuales por variety . Primero filtro la variety y luego la agrupo por mes y luego calculo la suma de qty

esta es mi consulta

 const monthly = await OrderDetails.aggregate([ { $match: { variety, }, }, { $group: { _id: { month: { $month: "$createdAt" }, qty: { $sum: { $toInt: "$qty" } }, }, }, }, { $sort: { _id: 1 } }, { $project: { qty: "$_id.qty", Month: { $arrayElemAt: [ [ "", "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", ], "$_id.month", ], }, }, }, ]);

Pero la salida viene así.

El resultado de esta consulta es este

 [ { _id: { month: 4, qty: 1 }, qty: 1, Month: 'Apr' }, { _id: { month: 4, qty: 5 }, qty: 5, Month: 'Apr' } ]

Pero el resultado esperado es un registro con una cantidad total de 6 como este

 [ { _id: { month: 4, qty: 6 }, qty: 6, Month: 'Apr' }, ]

¿Qué hay de malo en mi consulta?

about 4 years ago · Santiago Gelvez
1 Respostas
Responde à pergunta

0

Dado que la cantidad es para el acumulador, cambie su $group de

 { $group: { _id: { month: { $month: "$createdAt" }, qty: { $sum: { $toInt: "$qty" } } } } }

a

 { $group: { _id: { month: { $month: "$createdAt" } }, qty: { $sum: { $toInt: "$qty" } } } }

parque infantil mongo

about 4 years ago · Santiago Gelvez Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda