Afin d'obtenir la somme et moyen de Channels.Value
éléments pour chaque document de votre collection, vous devrez utiliser le traitement d'agrégation de mongodb. De plus, depuis Channels
est un tableau, vous devrez utiliser l'opérateur $unwind pour déconstruire le tableau.
En supposant que votre collection s'appelle example
, voici comment obtenir à la fois la somme du document et la moyenne de Channels.Value
s :
db.example.aggregate( [
{
"$unwind" : "$Channels"
},
{
"$group" : {
"_id" : "$_id",
"documentSum" : { "$sum" : "$Channels.Value" },
"documentAvg" : { "$avg" : "$Channels.Value" }
}
}
] )
Le résultat des données de votre publication serait :
{
"_id" : SomeObjectIdValue,
"documentSum" : 76,
"documentAvg" : 25.333333333333332
}
Si vous avez plus d'un document dans votre collection, vous verrez une ligne de résultat pour chaque document contenant un Channels
tableau.