node.js连接MongoDB,获取A字段并截取字段值复制到B字段

1.新建test.js,分别执行MongoDB的查找和更新操作

var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://ip:27017/";
 
MongoClient.connect(url, { useNewUrlParser: true }, function(err, db) {
    if (err) throw err;
    var dbo = db.db("IntelligentGuidance");
 var SID = "";
 var SNAME = "";
 var whereStr ="";
 var updateStr = "";
    dbo.collection("disease_info"). find({}).toArray(function(err, result) { // 返回集合中所有数据
        if (err) throw err;
        console.log(result);
  console.log(result.length);
  //遍历取出所有数据
  for(i=0,len=result.length; i<len; i++ ){
   var SICK_ID = result[i].SICK_ID;
   var sickid_length = SICK_ID.length;
   
   //取SNAME值
   SNAME = SICK_ID.substring(sickid_length-3,sickid_length);
   console.log(SNAME);
   
   //取SID值
   SID = SICK_ID.substring(0,sickid_length-3);
   console.log("SID = " + SID);
   
   //更新数据库
   whereStr = {"SICK_ID":SICK_ID};  // 查询条件
   updateStr = {$set: { 
   "SNAME" : SNAME,
   "SID" : SID
   }};
   dbo.collection("disease_info").updateOne(whereStr, updateStr, function(err, res) {
   if (err) throw err;
   console.log("文档更新成功");
   db.close();
    });
  }
  //console.log(SID);  
 
        db.close();
    });
});

2.node运行test.js
在这里插入图片描述
3.MongoDB数据库内显示
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值