我在猫鼬(MongoDb)中有这样的文件:
{
begin: Date,
end: Date
}
我想做的就是:
- 选择所有文件
end == null
- 然后使用
end =
“开始增加 10 天”更新它们
如何在一次更新中完成?
我在猫鼬(MongoDb)中有这样的文件:
{
begin: Date,
end: Date
}
我想做的就是:
end == null
end =
“开始增加 10 天”更新它们如何在一次更新中完成?
现在,您无法在update()
. 相反,您必须按照此答案中的描述遍历文档。在您的情况下,它看起来更像这样:
db.docs.find({end:null}).forEach(
function(doc) {
doc.end = doc.begin + 10;
db.docs.save(doc);
}
)
这是 Mongo shell 的语法——您可能需要根据 API对 Mongoose 进行一些更改。
此查询选择 end = null 的所有文档并使用新日期更新它
Collection.update({end:null}, {$set: {end:'new_date'}},{ multi: true });