2017-02-06 20 views
1

我正在尝试将字段添加到文档集合中。我想要做的就是使用名为create_date的字段更新每个文档,并将其创建时间戳记作为值。我知道你可以使用_id.getTimestamp()从ObjectId中获取时间戳,但我正在寻找一些我可以用它轻松完成的mongodb shell命令。使用创建日期字段追溯更新MongoDB文档集合

谢谢

回答

0

我有同样的问题。 3.2中的以下代码适用于我:

db.members.update({},{$set : {"createdAt":{ 
     "$date": "2017-01-01T09:19:38.116Z" 
    }}},false,true) 

在上面的示例中,最后2个字段为false,true指定了upsert和multi标志。

Upsert:如果设置为true,当没有文档匹配查询条件时创建一个新文档。

Multi:如果设置为true,则更新符合查询条件的多个文档。如果设置为false,则更新一个文档。

在3.2,你可以使用下面的命令,以及:

db.collection.updateMany({},{$set : {"createdAt": new Date("2017-01-01T09:19:38.116Z")}}) 
相关问题