當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Mongoose Query.prototype.estimatedDocumentCount()用法及代碼示例


estimatedDocumentCount() 方法是 Mongoose Query API 的一部分,用於估計集合中的文檔數量。它使用元數據提供文檔的近似計數,這比對集合中的所有文檔進行計數要快。

用法:

const MyModel = mongoose.model('MyModel', mySchema);
MyModel.estimatedDocumentCount()
    .then((count) => {
        ...
    })
    .catch((err) => {
        console.error(err);
    });

Mongoose 模塊的安裝:

步驟1:您可以使用此命令安裝此軟件包。

npm install mongoose

步驟2:安裝mongoose模塊後,您可以使用命令在命令提示符中檢查您的mongoose版本。

npm version mongoose

步驟3:之後,您可以創建一個文件夾並添加一個文件,例如index.js,要運行該文件,您需要運行以下命令。

node index.js

項目結構: 項目結構將如下所示:

示例 1:在此示例中,estimatedDocumentCount() 用於獲取 shopDB 集合中產品文檔的大致數量。產品模型是使用具有四個字段的模式定義的:id、name、price 和 stock。在 Product 模型上調用 estimatedDocumentCount() 方法來獲取文檔的大致數量,並將其記錄到控製台。

  • Index.js

Javascript


const mongoose = require("mongoose"); 
  
mongoose.set("strictQuery", true); 
mongoose 
    .connect("mongodb://localhost:27017/shopDB") 
    .then(() => { 
        const products = mongoose.model("Products", { 
            id: Number, 
            name: String, 
            price: Number, 
            stock: Number, 
        }); 
  
        products 
            .estimatedDocumentCount() 
            .then((count) => { 
                console.log( 
`There are approximately ${count} products in the collection.` 
                ); 
                mongoose.connection.close(); 
            }) 
            .catch((err) => console.error(err)); 
    }) 
    .catch((err) => console.error(err)); 
//Code contributed by Anurag Sharma

運行應用程序的步驟:使用以下命令運行index.js 文件:

步驟 1:確保已使用以下命令安裝 mongoose 模塊:

npm install mongoose

步驟2:下麵是函數執行之前數據庫中的示例數據,您可以使用任何GUI工具或終端來查看數據庫,就像我們使用MongoDB指南針GUI工具一樣,如下所示:

步驟 3:使用以下命令運行 index.js 文件:

node index.js

輸出:

示例 2:在此示例中,estimatedDocumentCount() 用於獲取 cseSociety 集合中 User 文檔的大致數量。

Javascript


const mongoose = require("mongoose"); 
  
mongoose.set("strictQuery", true); 
mongoose 
    .connect("mongodb://localhost:27017/cseSociety") 
    .then(() => { 
        const users = mongoose.model("Users", { 
            fullName: String, 
            userName: String, 
            email: String, 
            phone: Number, 
        }); 
  
        users 
            .estimatedDocumentCount() 
            .then((count) => { 
                console.log( 
`There are approximately ${count} users in the collection.` 
                ); 
                mongoose.connection.close(); 
            }) 
            .catch((err) => console.error(err)); 
    }) 
    .catch((err) => console.error(err)); 
//Code contributed by Anurag Sharma

運行應用程序的步驟:使用以下命令運行index.js 文件:

步驟 1:在此示例中,我們使用以下文檔:

步驟 3:使用以下命令運行 index.js 文件:

node index.js

輸出:

參考:https://mongoosejs.com/docs/api/model.html#model_Model.estimatedDocumentCount



相關用法


注:本文由純淨天空篩選整理自ianurag大神的英文原創作品 Mongoose Query.prototype.estimatedDocumentCount() API。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。