来源于:MongoDB: update every document on one field
如何更新mongodb所有文档?
在Mongo Shell命令窗口或者MongoDB的客户端上,按照不同的MongoDB版本,执行对应的命令即可。
MongoDB >= 3.2 版本的:
db.foo.updateMany({}, {$set: {lastLookedAt: Date.now() / 1000}})
其中:
- {} 是匹配条件,当什么都不填写,匹配所有的文档;
- {$set:{...}},这里面是我们需要更新的内容。
更多参考:http://docs.mongodb.org/manual/tutorial/modify-documents/#update-multiple-documents
MongoDB >= 2.2 版本的:
db.foo.update({}, {$set: {lastLookedAt: Date.now() / 1000}}, { multi: true })
- {} 是匹配条件,当什么都不填写,匹配所有的文档;
- {$set:{...}},这里面是我们需要更新的内容;
- {multi:true},这个参数是代表是否更新多条记录。
更多参考:http://docs.mongodb.org/manual/tutorial/modify-documents/#update-multiple-documents
MongoDB < 2.2 版本的:
db.foo.update({}, {$set: {lastLookedAt: Date.now() / 1000}}, false, true)
- {} 是匹配条件,当什么都不填写,匹配所有的文档;
- {$set:{...}},这里面是我们需要更新的内容;
- false,表示如果存在就更新,不存在就插入;
- true,表示是否更新多条记录。
更多参考:https://web.archive.org/web/20120613233453/http://www.mongodb.org/display/DOCS/Updating
文章的脚注信息由WordPress的wp-posturl插件自动生成