簡體   English   中英

Mongodb 查詢如何在 node.js 中工作?

[英]How Mongodb queries works in node.js?

我在 Node.js Express.js MongoDB 和 Mongoose 中有一個非常簡單的搜索查詢:

await Model.find({}).limit(10);

我的問題是建築師如何工作? 是先獲取所有模型數據然后限制為 10 還是在獲取所有數據之前從數據庫中獲取 select 10 項? 我的意思是步驟:

  1. 從 Model 中查找所有數據並返回為 List(Array) --> 2. 限制 10 個第一項並從 List(Array) 中刪除其他項。

  2. 查找前 10 個項目並以 List(Array) 形式返回

性能差異很大,第一步是如果我們獲得一百萬個數據,它將以巨大的 10 20 秒返回 1 個研磨項目,然后限制其中的 10 個,我們失去 10 20 秒的時間,當用戶更多時服務器將完成,但第二種方式即使有 1 億個項目,也總是需要相同的時間。

function 設置的limit指定了cursor將返回的最大元素數。 在您的示例中,cursor 將僅返回與查詢匹配的前 10 個項目(選項 2)。 您可以通過以下鏈接找到有關cursor.limit()如何工作的更多信息:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM