【发布时间】:2020-05-15 05:56:55
【问题描述】:
我在一个集合中有多个文档(本例中为 3 个文档),如下所示:
{
_id:123,
bizs:[{_id:'',name:'a'},{_id:'',name:'b'}]
},
{
_id:456,
bizs:[{_id:'',name:'e'},{_id:'',name:'f'}]
}
{
_id:789,
bizs:[{_id:'',name:'x'},{_id:'',name:'y'}]
}
现在,我想通过匹配我的 id 数组来更新 bizs 子文档。 也就是说,我的更新查询的数组过滤器是[123,789],它会匹配每个文档的_id字段。 我曾尝试使用 findByIdAndUpdate() 但这不允许更新查询的数组
如何更新 2 个匹配的文档(如我上面的示例),而不必将 findByIdAndUpdate 放在 forloop 中以将数组元素与 _id 匹配?
【问题讨论】:
-
这两个文档的更新值是否相同,或者每个文档的更新值不同?
-
@srinivasy 这两个文档的更新值相同
标签: mongodb mongoose mongodb-query