多个sql语句嵌套查询

本文介绍了两种批量执行SQL查询的方法。法一是使用`async.eachSeries`遍历SQL语句数组,通过回调处理查询结果。法二是将`db.query`封装为Promise,利用`Promise.all`并行执行SQL查询,然后处理查询结果。
摘要由CSDN通过智能技术生成
法一:
// 设置 connection连接
multipleStatements: true

//存储查询的sql语句的数组
let sqlArr = [];
//存储查询结果的对象
let resObj = {};
async.eachSeries(sqlArr, function(item, callback){
 db.query(item, function(err, rows){
  if(err){
   return callback(err);
  }
  resObj[item] = rows;
  callback(null);
 }));
},function(err) {
 if(err){
  return console.error(err)
 }
 //对结果进行处理...结果均在resObj中,key为sql语句,value为语句对应的sql执行结果
 console.log(resObj);
});

法二:
//首先你要把db.query封装成一个promise,如下:
//这部分代码你可以放到公共lib文件里面
function query(sql){
 return new Promise(function (resolve, reject){
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值