代码之家  ›  专栏  ›  技术社区  ›  Homam

在MongoDB中,如何克隆集合中的列?

  •  1
  • Homam  · 技术社区  · 6 年前

    有没有一种方法可以在一个集合中添加一个新列,而该集合是同一集合中现有列的克隆?

    个性

    _id | Name
    1   | John
    

    结果

    _id | Name | Name(cloned)
    1   | John | John 
    

    希望没有 foreach 循环。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Ashh    6 年前

    你可以用 bulkWrite 操作

    const persons = await PersionTable.find({})
    
    const updateTable = await PersionTable.bulkWrite(
      persons.map((person) => {
      person.clonedName = person.name
        return({
          updateOne : {
            filter: { _id: person._id },
            update: { $set: person }
          }
        })
      })
    )