是否可以在 MongoDB 中进行批量更新/更新插入(而不是插入)?
如果是,请指出与此相关的任何文档?
谢谢
您可以使用命令行程序mongoimport它应该在您的 MongoDB bin 目录中...
您需要考虑两个选项来使用upsert ...
--upsert 插入或更新已存在的对象
--upsertFields arg 逗号分隔的字段,用于 upsert 的查询部分。你应该确保这是索引
更多信息在这里:http ://www.mongodb.org/display/DOCS/Import+Export+Tools
或者只是做...
$ mongoimport --help
mongo 可以执行.js
文件。您可以将所有更新命令推送到 js 文件中。
t.js
db.record.update({md5:"a35f10a8339ab678612d1f86be08b81a"},{$set:{algres:[]}},false,true);
db.record.update({md5:"a35f10a8339ab678612d1f86be08b81b"},{$set:{algres:[]}},false,true);
然后,
mongo 127.0.0.1/test t.js
批量更新也可以按照文档中的说明分批完成:
我使用这些来导入 CSV 文件,在导入数据之前我需要稍微处理一下。处理更新时它有点慢,但它在大约 83 秒内完成了我的 50K 文档更新,这比 mongoimport 命令慢得多。