Node.js MongoDB:如何在连续查询中检索大量文档
这就是我想要实现的目标: 我收集了大量的文件。用户将查询某个字段,这将返回大量文档。 但出于带宽/处理的原因,我不想一次获取所有文档并将它们发送给用户(浏览器) 假设用户使用搜索字段发出GET请求。这将产生1000个结果。但我只想将前10个发送给用户。然后用户会请求下一个10,依此类推 有没有办法在Mongodb中实现这一点?我可以使用某个计数器进行查询并在连续查询中递增它吗 实现这一机制的好方法是什么Node.js MongoDB:如何在连续查询中检索大量文档,node.js,mongodb,web-services,database-design,database,Node.js,Mongodb,Web Services,Database Design,Database,这就是我想要实现的目标: 我收集了大量的文件。用户将查询某个字段,这将返回大量文档。 但出于带宽/处理的原因,我不想一次获取所有文档并将它们发送给用户(浏览器) 假设用户使用搜索字段发出GET请求。这将产生1000个结果。但我只想将前10个发送给用户。然后用户会请求下一个10,依此类推 有没有办法在Mongodb中实现这一点?我可以使用某个计数器进行查询并在连续查询中递增它吗 实现这一机制的好方法是什么 谢谢。这里的数字代表1,2,3,。。。。。如果您给出的数字为1,则表示前10条记录 db.s
谢谢。这里的数字代表1,2,3,。。。。。如果您给出的数字为1,则表示前10条记录
db.students.find().skip(number > 0 ? ((number-1)*10) : 0).limit(10);
//first 10 records ,number = 1
db.students.find().skip(1 > 0 ? ((1-1)*10) : 0).limit(10);
//next 10 records ,number = 2
db.students.find().skip(2 > 0 ? ((2-1)*10) : 0).limit(10);
这里的数字表示1,2,3,。。。。。如果您给出的数字为1,则表示前10条记录
db.students.find().skip(number > 0 ? ((number-1)*10) : 0).limit(10);
//first 10 records ,number = 1
db.students.find().skip(1 > 0 ? ((1-1)*10) : 0).limit(10);
//next 10 records ,number = 2
db.students.find().skip(2 > 0 ? ((2-1)*10) : 0).limit(10);
MongoDB本机支持使用skip()和limit()命令进行分页操作
//first 10 results -> page 1
collection.find().limit (10)
//next 10 results -> page 2
collection.find().skip(10).limit(10)
//next 10 results -> page 3
collection.find().skip(20).limit(10)
MongoDB本机支持使用skip()和limit()命令进行分页操作
//first 10 results -> page 1
collection.find().limit (10)
//next 10 results -> page 2
collection.find().skip(10).limit(10)
//next 10 results -> page 3
collection.find().skip(20).limit(10)