我有以下文件
{
_id="12345",
details:[
{
name:"Customer_Name",
time:"request_time"
},
{
name:"Customer_Name",
time:"request_time"
},
{
name:"Customer_Name",
time:"request_time"
}, ....
]
}
我想更新“details”数组的所有对象中的“name”字段。
我可以使用它来使用
更新每个数组对象db.customer.updateMany({_id:"12345"},{$set:{"details.0.name":"My_Name"}});
有没有办法一次更新所有这些
答案 0 :(得分:0)
尝试:
db.customer.find({ _id:"12345" })
.forEach(function (doc) {
doc.details.forEach(function (details) {
details.name="My_Name";
});
db.customer.save(doc);
});