首页 > 解决方案 > 在 MongoDB 中复制和重命名文档字段

问题描述

我想重命名我的 Mongo 集合中所有文档都具有的字段。已经有一个很好的答案。但是,我不想覆盖当前的属性名称,而是想将重命名的属性另存为新字段,保持原始属性不变。

想象一下我的文档是这样的:

{
  "property": "Original property value"
}

我想得到这个:

{
  "property": "Original property value",
  "property_new": "Original property value"
}

我怎样才能做到这一点?

标签: mongodbmongodb-queryaggregation-framework

解决方案


您可以使用 $out聚合

db.collection.aggregate([
  { "$addFields": {
    "property_new": "$property"
  }},
  { "$out": "newCollection" }
])

它将使用名称创建一个新集合,newCollection只需将其重命名为现有集合即可。


推荐阅读