sql >> Databáze >  >> NoSQL >> MongoDB

MongoDB sečte pole z více dokumentů na základě jednotlivých prvků

Můžete použít includeArrayIndex pokud máte 3.2 nebo novější MongoDb.

Pak byste měli změnit $unwind .

Váš kód by měl vypadat takto:

.aggregate(
    [
      {
        "$unwind" :  { path: "$result", includeArrayIndex: "arrayIndex" }
      },
      {
        "$group": {
          "_id": "$arrayIndex",
          "results" : { "$sum" : "$result"}
          }
      },
      { 
        $sort: { "_id": 1}
      },
      {
        "$group":{
          "_id": null,
          "results":{"$push":"$results"}
          } 
      },
      {
        "$project": {"_id":0,"results":1}
      }
    ]
)


  1. jackson deserializovat objekt se seznamem rozhraní pružiny

  2. Redis - Použití CONFIG SET za chodu ve vztahu master slave

  3. Automatická konfigurace zdroje dat se nezdařila:„spring.datasource.url“ není zadán

  4. Alternativy k vnořeným strukturám v Redis?