Mongodb: cara menghitung jumlah suatu bidang
Anda dapat menggunakan metode berikut untuk menghitung jumlah nilai dalam suatu bidang di MongoDB:
Metode 1: Hitung jumlah bidang
db.collection.aggregate([{ $group : {_id: null , sum_val:{$sum: " $valueField "}}}])
Metode 2: hitung jumlah bidang berdasarkan kelompok
db.collection.aggregate([{ $group : {_id: " $groupField ", sum_val:{$sum: " $valueField "}}}])
Contoh berikut menunjukkan cara menggunakan setiap metode dengan tim pengumpulan dengan dokumen berikut:
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})
Contoh 1: menghitung jumlah bidang
Kita dapat menggunakan kode berikut untuk menghitung jumlah nilai pada kolom poin :
db.teams.aggregate([{ $group : {_id: null , sum_val:{$sum: " $points "}}}])
Kueri ini mengembalikan hasil berikut:
{ _id: null , sum_val: 130}
Dari hasilnya kita dapat melihat bahwa jumlah nilai pada kolom titik adalah 130 .
Kami dapat memverifikasi kebenarannya secara manual dengan menghitung jumlah nilai poin secara manual:
Jumlah poin: 30 + 30 + 20 + 25 + 25 = 130 .
Contoh 2: menghitung jumlah bidang berdasarkan kelompok
Kita dapat menggunakan kode berikut untuk menghitung jumlah nilai di bidang poin , yang dikelompokkan berdasarkan bidang tim :
db.teams.aggregate([{ $group : {_id: " $team ", sum_val:{$sum: " $points "}}}])
Kueri ini mengembalikan hasil berikut:
{ _id: ' Spurs ', sum_val: 60 } { _id: ' Mavs ', sum_val: 70 }
Dari hasilnya kita dapat melihat:
- Total poin Spurs adalah 60 .
- Total poin untuk Mavs adalah 70 .
Catatan : Anda dapat menemukan dokumentasi lengkap untuk fungsi $sum di sini .
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di MongoDB:
Cara menghitung nilai median di MongoDB
Cara menghitung nilai rata-rata di MongoDB
Cara menghitung nilai maksimum di MongoDB