sql >> Databasteknik >  >> NoSQL >> MongoDB

Mongoose grupp och räkna

Du måste $unwind objekt array före gruppering:

const aggregatorOpts = [{
        $unwind: "$items"
    },
    {
        $group: {
            _id: "$items.productId",
            count: { $sum: 1 }
        }
    }
]

Model.aggregate(aggregatorOpts).exec()

vilket ger:

{ "_id" : "789", "count" : 1 }
{ "_id" : "456", "count" : 2 }
{ "_id" : "123", "count" : 3 }


  1. Node.js visar bilder från Mongo's GridFS

  2. Jag har en mongodb-fråga och jag vill hitta det exakt matchande ordet "Godkänd"

  3. MongoDB - Varför ska jag använda en markör istället för iterator_to_array (i PHP)

  4. Vilka är några riktiga användningsfall för att använda en NoSQL Document Store db?