我想向集合中添加一个新字段,并将新字段的值设置为现有字段的值。
具体来说,我想从这里开始:
# db.foo.findOne()
{
"_id" : ObjectId("4f25c828eb60261eab000000"),
"created" : ISODate("2012-01-29T16:28:56.232Z"),
"..." : ...
}
到这里:
# db.foo.findOne()
{
"_id" : ObjectId("4f25c828eb60261eab000000"),
"created" : ISODate("2012-01-29T16:28:56.232Z"),
"event_ts" : ISODate("2012-01-29T16:28:56.232Z"), #same as created
"..." : ...
}
(此集合中的新文档不会都有这种特殊的冗余,但我想对现有文档执行此操作)
最佳答案
function addEventTsField(){
db.foo.find().forEach(function(doc){
db.foo.update({_id:doc._id}, {$set:{"event_ts":doc.created}});
});
}
从控制台运行:
addEventTsField();
关于mongodb - 将新字段添加到具有现有字段值的集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9224841/