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

Apa perbedaan antara replaceOne() dan updateOne() di MongoDB?

Dengan replaceOne() anda hanya dapat mengganti seluruh dokumen, sementara updateOne() memungkinkan untuk memperbarui bidang.

Sejak replaceOne() menggantikan seluruh dokumen - kolom di dokumen lama yang tidak ada di dokumen baru akan hilang. Dengan updateOne() bidang baru dapat ditambahkan tanpa kehilangan bidang dalam dokumen lama.

Misalnya jika Anda memiliki dokumen berikut:

{
   "_id" : ObjectId("0123456789abcdef01234567"),
   "my_test_key3" : 3333
}

Menggunakan:

replaceOne({"_id" : ObjectId("0123456789abcdef01234567")}, { "my_test_key4" : 4})

menghasilkan:

{
   "_id" : ObjectId("0123456789abcdef01234567"),
   "my_test_key4" : 4.0
}

Menggunakan:

updateOne({"_id" : ObjectId("0123456789abcdef01234567")}, {$set: { "my_test_key4" : 4}})

menghasilkan:

{
   "_id" : ObjectId("0123456789abcdef01234567"),
   "my_test_key3" : 3333.0,
   "my_test_key4" : 4.0
}

Perhatikan bahwa dengan updateOne() Anda dapat menggunakan operator pembaruan pada dokumen.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kueri MongoDB dengan elemMatch untuk data array bersarang

  2. Memperbarui array bersarang di mongoDB melalui mongo Shell

  3. Bagaimana menemukan dokumen yang cocok dengan beberapa kriteria

  4. Membuat objek BSON dari string JSON

  5. Bagaimana cara membuat Gambar Mongo Docker dengan koleksi dan data default?