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

Bandingkan dua bidang array dalam dokumen yang sama

jika Anda sudah memiliki dua objek maka Anda dapat melakukan seperti ini. tetapi jika Anda perlu mendapatkannya dari mongoDb maka Anda harus menggunakan $mergeObject dalam agregasi mongo.

var a = [
    {
        "_id" : "5ba8d8dfaa988532967029af",
        "level" : 2,
        "completed" : 5,
        "asset" : "5ba8caa1aa98853296702989"
    },
    {
        "_id" : "5ba8d8dfaa988532967029b0",
        "level" : 2,
        "completed" : 3,
        "asset" : "5ba8caf6aa9885329670298a"
    }];
    
 var b = [
    {
        "total" : 1,
        "asset" : "5ba8caa1aa98853296702989",
        "level" : 2
    },
    {
        "total" : 1,
        "asset" : "5ba8caf6aa9885329670298a",
        "level" : 2
    }];
    var output = [];
    function extend(obj, src) {
	src.forEach(function(key,index) { 
          if(obj[index]["asset"] == src[index]["asset"] && obj[index]["level"] == src[index]["level"]){
            let c = {...obj[index],...src[index]};
            output.push(c);
           }
         
        });
    }
  extend(a, b);
  console.log(output)


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. res.redirect menampilkan informasi lama setelah pengiriman formulir?

  2. Bagaimana cara mengambil subset bidang menggunakan driver C # MongoDB?

  3. MongoDB GeoJSON Tidak dapat mengekstrak kunci geo dari objek, geometri cacat? saat memasukkan jenis Poligon

  4. GALAT:Tidak dapat menulis file pid ke /var/run/mongodb/mongod.pid:Tidak ada file atau direktori seperti itu inf fedora 20

  5. pymongo - modul dnspython harus diinstal untuk menggunakan mongodb+srv:// URI