【发布时间】:2016-07-23 00:05:07
【问题描述】:
我正在尝试创建一个查询数据库并返回对象列表的函数,对于每个对象我需要查询数据库并返回所有查询的结果。
如何等待所有查询完成,或者我应该以同步方式执行它们?如果是这样怎么办?我不应该利用它们都是选择查询并且不相互依赖的事实,因此并行运行它们以优化时间吗?这是一个糟糕的设计吗?或者我应该为此使用存储过程?
getTopActiveUsers:function(callback) {
pool.connect(function (err, client, done) {
if (err)
callback(null, err);
else {
User.finAll(client,function(users) {
for(var i=0;i<users.length;i++) {
Application.findByUser(users[i].id,function(applications) {
// here i have the applications for user i
})
}
// need to call the callback function when all queries finishes
})
}
});
}
【问题讨论】:
标签: javascript sql node.js postgresql promise