翻页是采用limit 加上find 第一页的最后一条的_id 来取出第二页的内容
但是就算把索引都载入内存后 翻过两千万文档后每次翻页都耗时十秒以上
请问还有什么翻页快速的方法么
拜谢 感激不尽
世界只因有你2017-05-02 09:19:50
先获取当前页面的第一个id,然后用下面这个获取下一页的所有数据:
db.collection.find({_id: {$gt: current_id}}).
skip(page_size).
limit(page_size).
sort({_id: 1});
我在有600多万条数据中,利用这个方法,都是非常快的。
如果你是这样的,还要十秒以上,可能是你的查询条件没有加索引。
用skip
加limit
可以翻页