如何在MongoDB中对集合进行两次成功同步查询?

时间:2016-04-29 19:26:39

标签: node.js mongodb

我想知道如何在MongoDB数据库中对两个不同的集合进行两次成功或同步访问。我需要在第一个集合中获取一个参数,以将其用作第二个查询中的.find()方法的参数。这是我的代码:

  MongoClient.connect(url, function(err, db) {
  db.collection('questions').find( { "status": "active" } ).toArray(
      function(err, item) {
        var fb_id = item[0]._id;
        console.log(fb_id);
        db.close();
        MongoClient.connect(url, function(err, db) {
          var cursorC = db.collection('comments').find({questionId : fb_id }).toArray(
            function(err, items) {
              console.log(items);
            }
          );
          db.close();
      });
    });
  });

我尝试将两个连接链接到数据库失败,但是第二个查询指出了未定义的结果。 当在saeme级别使用db.collection()。find()函数时,在MongoClient.connect()函数中我假设两者都是异步执行的,它以第二个函数的另一个未定义结果结束,第二个函数的结果取决于第一个函数。

您是否有任何想法继续使用我正在使用的MongoDB NodeJS驱动程序?

由于

0 个答案:

没有答案