Mongodb: so berechnen sie den durchschnittswert eines feldes


Sie können die folgenden Methoden verwenden, um den Durchschnittswert eines Felds in MongoDB zu berechnen:

Methode 1: Berechnen Sie den Felddurchschnitt

 db.collection.aggregate([{ $group : {_id: null , avg_val:{$avg: " $valueField "}}}])

Methode 2: Berechnen Sie den Felddurchschnitt pro Gruppe

 db.collection.aggregate([{ $group : {_id: " $groupField ", avg_val:{$avg: " $valueField "}}}])

Die folgenden Beispiele zeigen, wie die einzelnen Methoden mit einem Inkassoteam mit den folgenden Dokumenten verwendet werden:

 db.teams.insertOne({team: " Mavs ", points: 30, rebounds: 8})
db.teams.insertOne({team: " Mavs ", points: 30, rebounds: 12})
db.teams.insertOne({team: " Spurs ", points: 20, rebounds: 7})
db.teams.insertOne({team: " Spurs ", points: 25, rebounds: 5})
db.teams.insertOne({team: " Spurs ", points: 25, rebounds: 9})

Beispiel 1: Berechnen Sie den Felddurchschnitt

Wir können den folgenden Code verwenden, um den Durchschnittswert des Punktfelds zu berechnen:

 db.teams.aggregate([{ $group : {_id: null , avg_val:{$avg: " $points "}}}])

Diese Abfrage gibt die folgenden Ergebnisse zurück:

 { _id: null , avg_val: 26 }

Aus den Ergebnissen können wir ersehen, dass der Durchschnittswert im Punktefeld 26 beträgt.

Wir können manuell überprüfen, ob dies korrekt ist, indem wir die Punktwerte manuell mitteln:

Durchschnittliche Punkte: (30 + 30 + 20 + 25 + 25) / 5 = 26 .

Beispiel 2: Berechnen Sie den Felddurchschnitt pro Gruppe

Mit dem folgenden Code können wir den Durchschnittswert des Punktefelds , gruppiert nach dem Teamfeld , berechnen:

 db.teams.aggregate([{ $group : {_id: " $team ", avg_val:{$avg: " $points "}}}])

Diese Abfrage gibt die folgenden Ergebnisse zurück:

 { _id: ' Spurs ', avg_val: 23.333333333333332 }
{ _id: ' Mavs ', avg_val: 30 }

Aus den Ergebnissen können wir sehen:

  • Der durchschnittliche Punktwert der Spurs liegt bei 23,33 .
  • Der durchschnittliche Punktwert für die Mavs beträgt 30 .

Hinweis : Die vollständige Dokumentation zur $avg -Funktion finden Sie hier .

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere gängige Vorgänge in MongoDB ausführen:

MongoDB: So fügen Sie ein neues Feld hinzu
MongoDB: So löschen Sie ein Feld
MongoDB: So gruppieren und zählen
MongoDB: So gruppieren Sie nach mehreren Feldern

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert