sql >> Database >  >> NoSQL >> MongoDB

Mongodb Aggregation count array/set size

Het volgende retourneert het aantal unieke gebruikers per toepassing. Hiermee wordt een groepsbewerking toegepast op een resultaat van een groepsbewerking door gebruik te maken van de pijplijnfunctie van mongodb.

{ $match: { application: "abc" } }, 
{ $unwind: "$users" }, 
{ $group: { _id: "$status", users: { $addToSet: "$users" } } }, 
{ $unwind:"$users" }, 
{ $group : {_id : "$_id", count : {$sum : 1} } }

Hopelijk zal dit op een gemakkelijkere manier worden gedaan in de volgende releases van mongo door een commando dat de grootte van een array onder een projectie geeft. {$project: {id: "$_id", count: {$size: "$uniqueUsers"}}} https://jira.mongodb.org/browse/SERVER-4899

Proost



  1. Mongo-verbindingslek met morphia

  2. krijg een telling op een tekstzoekopdracht mongodb

  3. Berekende group-by-velden in MongoDB

  4. Hoe een verwijderd document in MongoDB te krijgen?