我有一个名为posts的集合,最初他们只有" text"和"作者"领域。后来我添加了一个" date"以后的帖子。
如何为没有date / created-at字段的人添加初始帖子的日期字段。
我想我需要使用以下两个命令,但无法弄清楚如何建立连接(即循环)?
db.posts.find({"date":{"$exists":false}}
ObjectId(_id).getTimestamp()
答案 0 :(得分:3)
db.posts
.find({"date":{"$exists":false}) // looking for records without `date` field
.forEach(function (record) { // iterating through each record
record.date = null; // if you want to define current date use `new Date()`
db.posts.save(record); // saving updated record
});
答案 1 :(得分:1)
我猜你可以使用forEach()
函数。 forEach
db.posts.find({"date":{"$exists":false}).forEach(<function - do something>)