Mongodb mongo在更新中引用当前对象值
我有很多有结构的文档:Mongodb mongo在更新中引用当前对象值,mongodb,Mongodb,我有很多有结构的文档: [{ foo: [{ x: 1, y: 1, z: "foo" }, { x: 2, y: 9, z: "bar" }] }] 我需要一个更新命令,根据foo中匹配对象的值将新对象添加到foo数组中 例如: db.documents.updateMany({"foo.x":1}, {$addToSet:{"foo":{x:999,
[{
foo: [{
x: 1,
y: 1,
z: "foo"
}, {
x: 2,
y: 9,
z: "bar"
}]
}]
我需要一个更新命令,根据foo
中匹配对象的值将新对象添加到foo
数组中
例如:
db.documents.updateMany({"foo.x":1}, {$addToSet:{"foo":{x:999, y:foo.$.y, z:foo.$.z}}})
更准确地说,我必须复制匹配的元素,但用自定义输入替换一个字段
可以在一个命令中执行吗?或者至少如何以最好的方式做到这一点?查找每个项目的find.forEach+更新