繁体   English   中英

MongoDB:使用来自另一个字段的值更新字段

[英]MongoDB: Update field using value from another field

使用 Mongo shell,我试图为集合中的所有文档添加一个与现有字段具有相同值的字段。 假设我们有两个文件:

{
   'foo': 'str1'
}

{
   'foo': 'str2'
}

我想插入一个新字段'foo_new' ,它的值分别为'foo' ,这样文档就变成了

{
   'foo': 'str1'
   'foo_new': 'str1'
}

{
   'foo': 'str2'
   'foo_new': 'str2'
}

我用来更新 Mongo shell 中的集合('coll' 说)的命令是

db.coll.update({}, {$set: {'foo_new': '$foo'}}, {multi: true})

运行此命令的结果是两个更新的文档

{
   'foo': 'str1'
   'foo_new': '$foo'
}

{
   'foo': 'str2'
   'foo_new': '$foo'
}

'$foo'由于某种原因被解释为文字。

试试这个片段:

db.<collection>.update({}, [{$set: {'foo_new': '$foo'}}], {"multi": true})

希望能帮助到你!!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM