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

152
Visualizações
MongoDB - Contar ocurrencias de valores para el campo

Estructura del documento

 { "A": "1", "B": "3", "C": "0.000090213", }, { "A": "1", "B": "3", "C": "0.000037698", }, { "A": "2", "B": "4", "C": "0.00016664", }

Estoy tratando de obtener el recuento de valor para campos específicos con agregación, el resultado deseado para A y B sería

 A: { "1": 2, "2": 1} B: { "3": 2, "4": 1}

Cualquier ayuda es muy apreciada.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

 db.collection.aggregate([ { $facet: { "A": [ { $group: { _id: "$A", v: { $sum: 1 } } } ], "B": [ { $group: { _id: "$B", v: { $sum: 1 } } } ] } }, { $addFields: { A: { $map: { input: "$A", as: "a", in: { k: "$$a._id", v: "$$av" } } } } }, { $addFields: { B: { $map: { input: "$B", as: "b", in: { k: "$$b._id", v: "$$bv" } } } } }, { $project: { A: { "$arrayToObject": "$A" }, B: { "$arrayToObject": "$B" } } } ])

Explicado:

  1. $agrupar las claves deseadas en dos conductos separados con $faceta
  2. $addFields para cambiar el nombre de _id a k (adecuado para $arrayToObject)
  3. $proyecte los conteos deseados con $arrayToObject.

patio de recreo

over 4 years ago · Santiago Trujillo 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