更新Mongo中的每条记录

时间:2017-02-02 13:08:15

标签: mongodb mongodb-query records

我如何更新"标题"中的每条记录? mongo的集合,使名为LastReturnedName的字段为每条记录设置为Name?

以为它会是这样的:

db.title.update( 
    { "LastNameReturned" : "" }, 
    { $set:{ "LastNameReturned" : Name } }, 
    { multi : true } 
);

1 个答案:

答案 0 :(得分:1)

您可以使用foreach迭代:

db.title.find({ "LastNameReturned" : "" }).snapshot()
  .forEach(function(t) {
      db.title.update({_id: t._id}, {$set: {"LastNameReturned" : t.Name}});
   });

注意:您只能对未加密的集合使用snapshot()。如果您要使用批量操作,也可以加快更新速度。