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

Agregasi Mongo

Dengan asumsi Anda telah menginstal mongodb versi terbaru, salah satu caranya adalah:

  • Sort catatan berdasarkan published_date dalam urutan menurun.
  • group catatan berdasarkan category their . Untuk setiap grup, kumpulkan semua record bersama-sama dalam sebuah array.
  • Dalam kode sisi javascript/klien, slice 5 catatan teratas, dari setiap grup(kategori).

$slice tidak tersedia di sisi server $project operator pipa agregasi, yang mencegah kami melakukan operasi di sisi server.

var result = db.collection.aggregate(
[
{$sort:{"published_date":-1}},
{$group:{"_id":"$category","values":{$push:"$$ROOT"}}}
]
).map(function(doc){
return {"category":doc._id,"records":doc.values.slice(0,5)};
});

result variabel sekarang akan menjadi array dokumen. Setiap dokumen mewakili setiap category dan pada gilirannya memiliki larik 5 . teratas catatan.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Menggunakan findOne di mongodb untuk mendapatkan elemen dengan max id

  2. Cara mengonversi set replika MongoDB ke server yang berdiri sendiri

  3. API Python mana yang harus digunakan dengan Mongo DB dan Django

  4. MongoDB - Logis ATAU saat mencari kata dan frasa menggunakan pencarian teks lengkap

  5. Batasi Penggunaan RAM MongoDB