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>}})