我知道如何查询集合。但是我有一个包含100,000条记录的集合,我想每页只显示100个项目。然后,用户可以选择接下来的100条记录,依此类推......
由于此请求来自用户,如何在node.js上打开游标以在客户端请求时循环接下来的100个项目?
标准做法是什么?
谢谢!
答案 0 :(得分:0)
您所指的内容的标准做法就像分页一样。
您不需要一直打开光标。所有你需要确保的是你从你离开的同一个地方继续。
客户端将保留已经显示的记录数,并在光标的skip()
函数内使用该数字。
例如:
record_count = 10
。 record_count
。record_count
。record_count
变量更新为现在为20. 请注意,您希望以某种方式对结果进行排序,以便您的查询始终返回不同的结果(接下来的10条记录)。
我不太熟悉mongo的节点驱动程序,但在mongo shell中,您将按如下方式执行查询:
db.collection.find().sort( { "time": 1 } ).skip( record_count ).limit( 10 )