MongoDB-এ রেকর্ড সংখ্যা সীমাবদ্ধ করা
MongoDB-এ ফলাফলের সংখ্যা সীমাবদ্ধ করার দুটি মূল পদ্ধতি আছে: find().limit() এবং Aggregation-এ $limit স্টেজ।
নমুনা ডেটা তৈরি
> db.demo240.insertOne({"StudentName":"Chris"});
> db.demo240.insertOne({"StudentName":"Bob"});
> db.demo240.insertOne({"StudentName":"David"});
> db.demo240.insertOne({"StudentName":"Mike"});
সকল ডকুমেন্ট দেখানো
> db.demo240.find();
আউটপুট (৪টি ডকুমেন্ট):
{ "_id" : ObjectId(...), "StudentName" : "Chris" }
{ "_id" : ObjectId(...), "StudentName" : "Bob" }
{ "_id" : ObjectId(...), "StudentName" : "David" }
{ "_id" : ObjectId(...), "StudentName" : "Mike" }
পদ্ধতি ১: find().limit() — সবচেয়ে সহজ
> db.demo240.find().limit(3);
আউটপুট (প্রথম ৩টি):
{ "_id" : ObjectId(...), "StudentName" : "Chris" }
{ "_id" : ObjectId(...), "StudentName" : "Bob" }
{ "_id" : ObjectId(...), "StudentName" : "David" }
পদ্ধতি ২: Aggregation $limit
> db.demo240.aggregate([ { $limit: 3 } ]);
একই ফলাফল দেবে।
সর্ট করে লিমিট (Pagination)
সাধারণত সর্ট সাথে লিমিট ব্যবহার করা হয়:
> db.demo240.find().sort({ StudentName: 1 }).limit(3);
Skip + Limit (পেজিনেশন)
> db.demo240.find().sort({ StudentName: 1 }).skip(3).limit(3); // ২য় পেজ
কোনটি ব্যবহার করবেন?
- find().limit(): সিম্পল কোয়েরি, কёрসর রিটার্ন করে, অ্যাপ্লিকেশন লেভেলে ব্যবহারিক
- $limit (Aggregation): জটিল পাইপলাইনের অংশ হিসেবে, অন্যান্য স্টেজের সাথে কম্বাইন করার সময়
নোট: আর্টিকেল ১০০৬০৭০৬১৯ এই আর্টিকেলের ডুপ্লিকেট।