Может как-то так (async/await сами расставьте, я не понимаю принципа их работы)?
var data = async function() {
const pool = new sql.ConnectionPool(sql_config);
pool.on('error', err => {
// ... error handler
console.log('sql errors', err);
});
try {
await pool.connect();
return Promise.all([
pool.request().query('select * from data'),
pool.request().query('select * from data2')
]);
} catch (err) {
return {
err: err
};
} finally {
pool.close();
}
};