MongoDB限制和返回的文档数

时间:2014-08-17 10:20:46

标签: mongodb mongodb-query

我有以下Mongo数据库:

db.group:

{id: 1, name:"a"}  // index == 1
{id: 2, name:"b"}  // index == 2
{id: 13, name:"c"} // index == 3
{id: 14, name:"d"} // index == 4
{id: 51, name:"e"} // index == 5
{id: 52, name:"f"} // index == 6
{id: 61, name:"g"} // index == 7
{id: 88, name:"h"} // index == 8

我正在实施分页,我想从索引4(基于1,不基于零)开始返回3个文档,这将是

{id: 14, name:"d"} // index == 4
{id: 51, name:"e"} // index == 5
{id: 52, name:"f"} // index == 6

我知道我可以使用.limit来限制返回的记录数量,但是我怎么说limit应该从索引4开始?

1 个答案:

答案 0 :(得分:2)

您可以使用cursor.skip()

db.getCollection('group').sort({_id: 1}).skip(3).limit(10)

请注意skip()不是最有效的数字。您可能希望使用基于范围的分页:

db.getCollection('group').find({_id: {$gt: 13}}).limit(10)