ومع ذلك ، يمكن أن يكون الحصول على آخر مستند _ID للاستعلامات اللاحقة أمرًا صعبًا. يتضمن المفهوم الأساسي العثور على آخر مستند _id في صفحة واستخدامه كإزمة أسفل الصفحة التالية. إليك مثال:
var cursor = db.users.find (). limit (pagesize) ؛ var doc = cursor.next () ؛ var last_id = doc._id ؛ // صفحة 2 var cursor = db.users.find ({'_ id'> last_id}). الحد (10) ؛
يسترجع هذا النهج بكفاءة المجموعة التالية من المستندات دون استهلاك الذاكرة المفرطة. تتمثل إحدى الأساليب في تتبع كلاً من رتبة المستند الأخيرة (أو حقل فرز آخر) وقائمة _ids التي تم استردادها بالفعل.
إليك مثال: var seenids = [] ؛ var lastseenrank = null ؛ var cursor = db.junk.find (). sort ({"rank": -1}). limit (2) ؛ // ... // صفحة 2 var ursor = db.junk.find ( {"_id": {"$ nin": seenids} ، "Rank": "$ lte": lastseenrank} ) .sort ({"Rank": -1}). الحد (2) ؛
يتيح لك هذا استبعاد المستندات التي شوهدت بالفعل والحفاظ على ترتيب الفرز المطلوب.
يتيح لك استرداد نطاقات محددة من البيانات دون المساس بالأداء ، ولكنه يأتي مع بعض القيود ، مثل عدم القدرة على التراجع بسهولة أو القفز إلى صفحات محددة. يتيح لك فهم هذه المفاهيم استخدام هذا النهج بفعالية في تطبيقات MongoDB الخاصة بك.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3