使用nodejs在MongoDB中获取数据库的所有文档

时间:2018-12-13 16:13:35

标签: node.js json mongodb

我是MongoDB和nodejs的新手。我有一个要求,我需要根据此要求提取mongo数据库中的所有文档。我发现了许多代码,这些代码使我可以从数据库中的集合中获取所有文档,但是没有代码可以一次性获取数据库中的所有文档。 游标可以用于此吗? 以下是我找到的代码:

var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:port/";

MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  var dbo = db.db("mydb");
  dbo.collection("customers").find({}).toArray(function(err, result) {
    if (err) throw err;
    console.log(result);
    db.close();
  });
});

我想获取“ mydb”下的所有文档,而不仅仅是“集合”下的文档。最终输出应该是其中包含文档JSON的JSON。

注意:“ mydb”的多个集合下的所有文档均采用相同的json格式。

1 个答案:

答案 0 :(得分:2)

您必须分别查询每个collection并将它们连接在一起,您如何看待这样的事情:

var dataFromAllCollections = [];
const collections = db.getCollectionNames();
for(var i = 0; i< collections.length; i++){    
   dataFromAllCollections.concat(db.getCollection(collections[i]).find());
}
相关问题