Je suis assez nouveau à MongoDB, et avoir quelques problèmes pour obtenir ma requête comme je le veux. Les documents contiennent des "erreurs" qui se sont produites à un moment précis. Le résultat que je veux de la requête est un nombre d'erreurs pour chaque mois par utilisateur. Cela je l'ai déjà compris, mais en plus je veux le nombre total d'erreurs par utilisateur.Sum somme dans la requête d'agrégation
C'est ce que j'ai jusqu'à présent:
db.Logger.aggregate([
{ "$group": {
"_id": {
"name": "$name",
"month": { "$month": "$errorTime" }
},
"totalErrors": { "$sum": 1 }
}},
{ $group :
{ _id: { name : "$_id.name"},
errors: { $addToSet: { totalErrors: { errorsThisMonth: "$totalErrors", currentMonth : "$_id.month" } } },
}
}
])
Le résultat est:
{
"_id" : {
"name" : "abhos"
},
"errors" : [
{
"totalErrors" : {
"errorsThisMonth" : 6,
"currentMonth" : 2
}
},
{
"totalErrors" : {
"errorsThisMonth" : 6,
"currentMonth" : 1
}
}
]
},
aura-t-il possible d'obtenir ce que je veux en y ajoutant cette requête?
Merci, a parfaitement fonctionné! –