gpt4 book ai didi

mongodb - 蒙戈 : How to update a field using value of another field

转载 作者:行者123 更新时间:2023-12-05 04:35:50 24 4
gpt4 key购买 nike

我有一群人:

{
name: Juan,
age: 21
}

现在,我想实现以下目标:

{
name: Juan,
age: 21,
name_reply:Juan
}

我试过使用:

db.people.updateMany(
{"name_reply":null},
[{$set:{name_reply:"$name"}}]
);

但出现以下内容。期望类型对象但找到数组。

如何使用另一个字段的值更新一个 mongo 字段?

最佳答案

  db.collection.update({
"name_reply": null
},
[
{
"$set": {
"name_reply": "$name"
}
}
],
{
multi: true
})

但实际上这仅适用于 mongodb 版本 >=4.2,您可以在其中为更新查询提供聚合管道

playground

对于早期版本,您可以查看此答案 here

像这样的东西最有可能完成这项工作:

db.collection.find({"name_reply":null}).snapshot().forEach( 
function (doc) {
doc.name_reply = doc.name;
db.collection.save(doc);
}
);

关于mongodb - 蒙戈 : How to update a field using value of another field,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70961565/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com