MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

multi sum/hitung pada mongodb (jumlahkan jenis kelamin dan total semua hasil)

Sesuatu seperti itu akan berhasil:

db.collection.aggregate([
  {$project: {
    male: {$cond: [{$eq: ["$gender", "male"]}, 1, 0]},
    female: {$cond: [{$eq: ["$gender", "female"]}, 1, 0]},
  }},
  {$group: { _id: null, male: {$sum: "$male"},
                        female: {$sum: "$female"},
                        total: {$sum: 1},
  }},
])

Memproduksi dengan memberi contoh Anda:

{ "_id" : null, "male" : 2, "female" : 3, "total" : 5 }

Ide utamanya adalah menggunakan ekspresi kondisional untuk memetakan jenis kelamin ke 0 atau 1. Setelah itu, yang Anda butuhkan hanyalah jumlah sederhana untuk setiap bidang.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Instalasi Laravel Homestead Mongo menyebabkan kesalahan PHP simbol tidak terdefinisi:php_json_serializable_ce in Unknown on line 0

  2. Dalam set Mongo db primer-sekunder jika Anda secara tidak sengaja menulis ke sekunder apakah itu akan tercermin dalam primer itu akan dialihkan ke primer

  3. Menghubungkan ke mongodb menggunakan luwak dan Fixie (tambahan Heroku)

  4. Apakah database berorientasi dokumen dimaksudkan untuk menggantikan database relasional?

  5. Bagaimana saya bisa membuat daftar semua koleksi di shell MongoDB?