mongodb 批量获取集合字段并更新:从一个集合获取字段并更新到另一集合中的某个字段,mongodb批量删除字段

mongodb 批量获取集合字段并更新:从一个集合获取字段并更新到另一集合中的某个字段

这里是将mongdb数据库中的集合1中所有字段名1对应的值,复制给了集合2中所有字段名2对应的值。
“item”不需要改动,有一个前提,就是这两个集合的_id.ObjectId是相同的。

db = db.getSiblingDB("数据库名");
db.getCollection("集合1").find({}).forEach(
 function(item){
db.getCollection("集合1").update({"_id":item._id},{$set:{"字段名1":db.getCollection("集合2").find({"_id":item._id})[0].字段名2}});
 }
)

如果想要删除集合1中所有文档下的字段名数据,包括字段一并删除,js脚本如下:

db = db.getSiblingDB("数据库");
db.getCollection("集合1").find({}}).forEach(
 function(item){
 if(判断条件){
    db.getCollection("集合1").update({"_id":item._id},{$unset:{"字段名":""}});
           
       }
 }
)