En tilgang til dette problem, hvis du har store mængder dokumenter, og du viser dem sorteret ordre (jeg er ikke sikker på, hvor nyttig skip
over). er, hvis du ikke er det) ville være at bruge den nøgle, du sorterer på, til at vælge den næste side med resultater.
Så hvis du starter med
db.myCollection.find().limit(100).sort({created_date:true});
og udtræk derefter oprettelsesdatoen for den sidste dokument returneret af markøren til en variabel max_created_date_from_last_result
, kan du få den næste side med den langt mere effektive (forudsat at du har et indeks på created_date
) forespørgsel
db.myCollection.find({created_date : { $gt : max_created_date_from_last_result } }).limit(100).sort({created_date:true});