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

Memperbarui array bersarang di mongoDB melalui mongo Shell

Anda secara langsung mencapai salah satu batasan MongoDB saat ini. Masalahnya adalah bahwa mesin tidak mendukung beberapa operator posisi. Lihat ini Penggunaan ganda operator `$` untuk memperbarui array bersarang

Ada tiket terbuka untuk ini:https://jira.mongodb.org/browse/SERVER-831 (disebutkan juga di sana)

Anda juga dapat membaca yang ini tentang cara mengubah model data Anda:Memperbarui array bersarang di mongodb

Jika memungkinkan untuk Anda, Anda dapat melakukan:

db.collection.update({_id:2,"event_type.name":'MT' ,"event_type.language.name":'English'},{$set:{"event_type.0.language.$.count":<number>}})

db.collection.update({_id:2,"event_type.name":'MT' ,"event_type.language.name":'English'},{$set:{"event_type.$.language.0.count":<number>}})

Tapi Anda tidak bisa melakukan:

db.collection.update({_id:2,"event_type.name":'MT' ,"event_type.language.name":'English'},{$set:{"event_type.$.language.$.count":<number>}})


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. mongodb versi 3.0.0 klien robomongo mongovue

  2. Bagaimana saya bisa menjanjikan driver Javascript asli MongoDB menggunakan bluebird?

  3. Bandingkan array dan Kembalikan Perbedaannya

  4. Sintaks Java dengan MongoDB

  5. Dokumen unik menggunakan banyak nilai dalam Skema Mongoose