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

Mongodb Apakah mungkin untuk menggabungkan suatu objek?

Karena Anda memiliki nilai dalam objek alih-alih array, Anda harus menggunakan mapReduce.

// Emit the values as integers

var mapFunction = 
  function() {
    for (key in this.packets) {
      emit(null, parseInt(this.packets[key]));
    }
  }

// Reduce to a simple sum

var reduceFunction = 
  function(key, values) {
    return Array.sum(values);
  }

> db.collection.mapReduce(mapFunction, reduceFunction, {out: {inline:1}})
{
    "results" : [
        {
            "_id" : null,
            "value" : 2381
        }
    ],
    "ok" : 1,
}

Jika memungkinkan, Anda harus memancarkan nilai sebagai larik bertipe numerik karena itu memberi Anda lebih banyak opsi (yaitu agregasi) dan (kecuali kumpulan datanya besar) mungkin menguntungkan kinerja.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Hitung jumlah objek bersarang dengan C#

  2. Tanggal MongoDB di zona waktu

  3. Bagaimana cara memasukkan tanggal yang sama di mongodb seperti yang dibaca dari String melalui Java?

  4. Salin folder dengan wildcard dari wadah buruh pelabuhan ke Host

  5. Menemukan dokumen MongoDB melalui kata dalam deskripsi bidang di setiap produk dengan Mongoskin