Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

357
Vistas
Valores de suma de agregación de MongoDB y grupo por propiedad

Tengo una colección que se parece a esto.

 { balance: string symbol: string address: string }

Quiero consultar esa colección usando una agregación de la siguiente manera:

 input array addresses[]

consultar colección donde colección.dirección contenida en la dirección proporcionada Array y SUM todos los saldos agrupados por símbolo.

La salida deseada debería verse así:

 [ {symbol: xy, balance: summedBalanceForThisSymbol}, {symbol: yz, balance: summedBalanceForThisSymbol}, ]

Soy bastante nuevo en mongoDB, esto es lo que tengo que no funciona en absoluto.

 const pipe = [ { match: [ { address: { $in: addresses } //addresses is an array of string values } ] }, { group: { objectId: "$symbol", balance: { $sum: "$balance" } } } ]

Tengo que usar objectId en lugar de _id porque el SDK que estoy usando requiere hacerlo. También necesito que los valores de balance de cadena se conviertan en un número (supongo que el doble) antes de resumir.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Estás muy cerca, solo tienes algunos errores menores de sintaxis, así es como debes hacerlo:

(Una cosa que se debe mencionar es que esto requiere que el balance sea una cadena de números válida; de lo contrario, la canalización arrojará un error)

 db.collection.aggregate([ { $match: { address: { $in: addresses } } }, { $group: { _id: "$symbol", sum: { $sum: { "$toInt": "$balance" } } } } ])

Parque infantil Mongo

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda