Mongoose:如何切片整个查询?

时间:2014-06-19 00:08:04

标签: node.js mongodb mongoose

我正在寻找一种从特定查询中获取M个文档的方法,从第N个文档开始,而不是在exec()回调中呈现整个集合,然后从那里拼接一个数组。我非常清楚.limit(x)从0到x可以正常工作,但据我所知,我无法选择查询开始限制文档数量的位置,例如{{limit(10) 1}}从5开始。

我试过这样的事情:

Model.find().sort({creationDate: -1}).where("_id").splice([5,10]).exec(function(err, data) {
                if(err) res.send(502, "ERROR IN DB DATABASE");
                res.send(data);
            });

但结果数据包含整个集合。 关于如何实现这一点的任何想法?

1 个答案:

答案 0 :(得分:5)

.skip就是你要找的东西

Model.find(...).sort(...).skip(5).limit(10).exec(....)