如何在批量更新中为每个文档创建唯一的对象 ID?
我试过了,
db.foo.update({ objectId: null }, { $set: { objectId: new ObjectId() }}, { multi: true })
但这为我提供了每个文档的相同对象 ID。
最佳答案
因为您要为每个文档应用一个唯一值,所以您需要遍历您的集合并一次更新一个文档。
在外壳中:
db.foo.find({ objectId: null }).forEach(function(doc) {
doc.objectId = new ObjectId();
db.foo.save(doc);
});
关于mongodb - 为集合中的每个文档生成一个新的 Mongo 对象 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22158114/