您仍然可以使用
$ positional运算符来完成此操作。但是您需要指定父文档的objectid以及_arrayid过滤器。下面的命令行查询工作正常
db.so.update({_id:ObjectId("4e719eb07f1d878c5cf7333c"), "array._arrayId":ObjectId("dsd87dsa9d87s9d7")}, {$set:{"array.$.someField":"updated"}})
您仍然可以使用
$ positional运算符来完成此操作。但是您需要指定父文档的objectid以及_arrayid过滤器。下面的命令行查询工作正常
db.so.update({_id:ObjectId("4e719eb07f1d878c5cf7333c"), "array._arrayId":ObjectId("dsd87dsa9d87s9d7")}, {$set:{"array.$.someField":"updated"}})