MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jak obliczyć średnią ważoną w mongoDB przy użyciu struktury agregacji?

W tym celu należy najpierw obliczyć licznik (suma ważona) i mianownik (suma wag) otrzymanego stosunku. Potem wystarczy tylko podzielić jeden przez drugi:

db.collection.aggregate({
  $group : {
     _id : 'weighted average', // build any group key ypo need
     numerator: { $sum: { $multiply: [ "$price", "$quantity" ] } },
     denominator: { $sum: "$quantity" }
  }
}, {
  $project: {
    average: { $divide: [ "$numerator", "$denominator" ] }
  }
})

Więcej informacji znajdziesz w dokumentacji potoku agregacji .




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Zagregowane szeregi czasowe MongoDB

  2. Klasa wygenerowana przez Mapstruct używa kreatora Lombok od rodzica zamiast dziecka

  3. Utwórz _id na poddokumentach w mongoimport --jsonArray

  4. Jak rozwiązać MongoError:pula zniszczona podczas łączenia z CosmosDB

  5. w nodejs, jak zatrzymać pętlę FOR do czasu powrotu wywołania mongodb