更改MongoDb中许多文档的字段类型
更改MongoDb中许多文档的字段类型,mongodb,Mongodb,我正在学习MongoDb,我的收藏中有很多这样的文档: 我想将我的cust_id字段从String更新为ObjectId。我可以用指南针改变类型,但我有很多文件。我读过Mongo文件,但还是不明白。您能在我的文档中演示如何执行此操作,以便我清楚地理解。 多谢各位 这里有一个解决方案的提示 db.students.find().forEach(function(obj) { obj.cust_id = ObjectId(obj.cust_id); db.students.save(obj
我正在学习MongoDb,我的收藏中有很多这样的文档: 我想将我的cust_id字段从String更新为ObjectId。我可以用指南针改变类型,但我有很多文件。我读过Mongo文件,但还是不明白。您能在我的文档中演示如何执行此操作,以便我清楚地理解。
多谢各位 这里有一个解决方案的提示
db.students.find().forEach(function(obj) {
obj.cust_id = ObjectId(obj.cust_id);
db.students.save(obj);
});
我在Atlas 4.0.6中对此进行了测试,效果良好。然而,我不知道这项技术对大型数据集的扩展效果如何
只需用您自己的收藏名称替换学生即可。我已经体验过将字符串转换为数字的功能,效果很好
db.students.find().forEach(obj =>{
obj.code_number= perseInt(obj.code_number);
db.students.save(obj);
});
还将使用结果创建新集合,以保留原始数据并检查结果
db.students.find().forEach(obj=> {
obj.code_number= perseInt(obj.code_number);
db.students_new.save(obj);
});
你的mongodb版本是什么?我查过了,上面说4.0.3你可以在这里使用
$out
聚合。