有没有办法在Node.js中优化这个MongoDB查询的分页

时间:2016-11-22 21:57:15

标签: node.js mongodb optimization pagination

我正在通过大量文档进行分页。我想知道这是否是使用_id的mongoDB中的一种有效的分页方式。我担心的是,每次我进行查询时,整个id的集合都需要在返回结果之前进行排序。我在使用索引优化查询时看到了这个文档,但这对我有用,因为我在_id上查询我认为已经编入索引了吗?

分页功能:

function paginateDocs(currId, docsPerPage) {
  const query = currId ? { _id: { $gt: currId } } : {};
  const queryOptions = { limit: usersPerPage, sort: '_id' };
  return mongo.find(query, queryOptions).toArray();
}

1 个答案:

答案 0 :(得分:0)

您可以使用cursor.hint(index),您可以将index定义为要对其进行排序的所有索引。请参阅此链接 - > https://docs.mongodb.com/manual/reference/method/cursor.hint/