MongoDB 中 limit() 會提升查詢速度嗎?


不,使用 LIMIT() 減少頻寬佔用,並不會提升查詢速度。下面我們透過一個示例,建立一個包含文件的集合 −

> db.demo197.insertOne({"Name":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3afde803d395bdc21346d8")
}
> db.demo197.insertOne({"Name":"Bob"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3afdef03d395bdc21346d9")
}
> db.demo197.insertOne({"Name":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3afdf203d395bdc21346da")
}
> db.demo197.insertOne({"Name":"Sam"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3afdf603d395bdc21346db")
}
> db.demo197.insertOne({"Name":"Mike"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3afdf903d395bdc21346dc")
}
> db.demo197.insertOne({"Name":"Carol"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3afe1603d395bdc21346dd")
}
> db.demo197.insertOne({"Name":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3afe2003d395bdc21346de")
}

透過 find() 方法顯示集合中的所有文件 −

> db.demo197.find();

這將產生以下結果 −

{ "_id" : ObjectId("5e3afde803d395bdc21346d8"), "Name" : "Chris" }
{ "_id" : ObjectId("5e3afdef03d395bdc21346d9"), "Name" : "Bob" }
{ "_id" : ObjectId("5e3afdf203d395bdc21346da"), "Name" : "David" }
{ "_id" : ObjectId("5e3afdf603d395bdc21346db"), "Name" : "Sam" }
{ "_id" : ObjectId("5e3afdf903d395bdc21346dc"), "Name" : "Mike" }
{ "_id" : ObjectId("5e3afe1603d395bdc21346dd"), "Name" : "Carol" }
{ "_id" : ObjectId("5e3afe2003d395bdc21346de"), "Name" : "John" }

以下是使用 LIMIT() 的查詢 −

> db.demo197.find().limit(4);

這將產生以下結果 −

{ "_id" : ObjectId("5e3afde803d395bdc21346d8"), "Name" : "Chris" }
{ "_id" : ObjectId("5e3afdef03d395bdc21346d9"), "Name" : "Bob" }
{ "_id" : ObjectId("5e3afdf203d395bdc21346da"), "Name" : "David" }
{ "_id" : ObjectId("5e3afdf603d395bdc21346db"), "Name" : "Sam" }

更新於: 2020 年 3 月 27 日

86 次瀏覽

開啟你的職業生涯

完成課程,獲得認證

開始
廣告
© . All rights reserved.