Một cách tiếp cận cho vấn đề này, nếu bạn có số lượng lớn tài liệu và bạn đang hiển thị chúng ở dạng đã sắp xếp đặt hàng (Tôi không chắc skip
hữu ích như thế nào là nếu bạn không) sẽ sử dụng khóa bạn đang sắp xếp để chọn trang kết quả tiếp theo.
Vì vậy, nếu bạn bắt đầu với
db.myCollection.find().limit(100).sort({created_date:true});
và sau đó trích xuất ngày tạo của cuối cùng tài liệu được con trỏ trả về thành một biến max_created_date_from_last_result
, bạn có thể nhận được trang tiếp theo với hiệu quả hơn nhiều (giả sử bạn có một chỉ mục trên created_date
) truy vấn
db.myCollection.find({created_date : { $gt : max_created_date_from_last_result } }).limit(100).sort({created_date:true});