Mongodb: bir alanın ortalama değeri nasıl hesaplanır


MongoDB’de bir alanın ortalama değerini hesaplamak için aşağıdaki yöntemleri kullanabilirsiniz:

Yöntem 1: Alan ortalamasını hesaplayın

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

Yöntem 2: Grup başına alan ortalamasını hesaplayın

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

Aşağıdaki örnekler, her yöntemin aşağıdaki belgelere sahip bir koleksiyon ekibiyle nasıl kullanılacağını gösterir :

 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})

Örnek 1: Alan ortalamasını hesaplayın

Puan alanının ortalama değerini hesaplamak için aşağıdaki kodu kullanabiliriz:

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

Bu sorgu aşağıdaki sonuçları döndürür:

 { _id: null , avg_val: 26 }

Sonuçlardan puan alanındaki ortalama değerin 26 olduğunu görüyoruz.

Puan değerlerinin ortalamasını manuel olarak alarak bunun doğru olduğunu manuel olarak doğrulayabiliriz:

Ortalama puanlar: (30 + 30 + 20 + 25 + 25) / 5 = 26 .

Örnek 2: alan ortalamasını gruba göre hesaplama

Takım alanına göre gruplandırılmış puan alanının ortalama değerini hesaplamak için aşağıdaki kodu kullanabiliriz:

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

Bu sorgu aşağıdaki sonuçları döndürür:

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

Sonuçlardan şunları görebiliriz:

  • Spurs’un ortalama puan değeri 23.33 .
  • Mavs’in ortalama puan değeri 30’dur .

Not : $avg işlevine ilişkin tüm belgeleri burada bulabilirsiniz.

Ek kaynaklar

Aşağıdaki eğitimlerde MongoDB’de diğer yaygın işlemlerin nasıl gerçekleştirileceği açıklanmaktadır:

MongoDB: Yeni bir alan nasıl eklenir
MongoDB: Bir alan nasıl silinir
MongoDB: Nasıl gruplandırılır ve sayılır?
MongoDB: Birden fazla alana göre nasıl gruplandırılır

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir