[英]MongoDB get the number of documents (count) in a collection using Node.js
[英]How can I return the number of documents in a MongoDB collection using Node.js?
我需要編寫一個使用 Node.js 返回集合中文檔數量的函數。 這是我的代碼(我遵循了另一個問題中的建議):
async function countCollections(callback) {
MongoClient.connect(url, function(err, db) {
if (err) callback(error);
var dbo = db.db(nameDB);
dbo.collection(nameCollections).find(query).count(function(err, count) {
if (err) callback(error);
db.close();
callback(null, count);
});
});
}
我這樣調用這個函數:
await countCollections(function(err, count) {
if (err) {
return console.log(err.message);
}
console.log('Number of documents: ', count);
});
使用這種方法,我只能查看計數值,但不能直接使用。 當我調用函數時,如何將計數值獲取到變量中?
您可以使用 Mongo 的 [countDocuments] 方法。( https://docs.mongodb.com/manual/reference/method/db.collection.countDocuments/ )。
let count = await db.collection(nameCollections).countDocuments(query)
同樣在不真正了解您的應用程序如何工作的情況下,我建議您不要在每次函數調用時打開一個新的 Mongo 連接,而是在您的應用程序啟動時打開它一次。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.