node.js - MongoDB中的范围查找分页命令
问题描述
我可以执行 MongoDb 的任何命令来查找特定范围的数据吗?
例如-我在数据库中有 100 个项目,我想首先获得前 10 个项目范围 1-10,然后我想获得下 10 个项目范围 11-20,依此类推。
解决方案
我们可以使用 skip() 和 limit() 来做到这一点
MongoDB 原生支持使用 skip() 和 limit() 命令进行分页操作。skip(n) 指令告诉 MongoDB 它应该跳过“n”个结果,limit(n) 指令指示 MongoDB 应该将结果长度限制为“n”个结果。通常,您将在光标上使用 skip() 和 limit() 指令 - 但为了说明该场景,我们提供了可以实现相同结果的控制台命令。此外,为了代码简洁,限制检查代码也被排除在外:
//Page 1
db.users.find().limit (10)
//Page 2
db.users.find().skip(10).limit(10)
//Page 3
db.users.find().skip(20).limit(10)
你明白了。通常,要检索页面“n”,代码如下所示:
db.users.find().skip(pagesize*(n-1)).limit(pagesize)
推荐阅读
- c# - 如何混淆 Unity 插件项目代码
- javascript - 使用 MongoDB 查找字段中具有不同值的所有文档
- iar - STM32CubeIDE - __packed 之前的预期说明符限定符列表
- flutter - 圆形进度指示器颤动中的文本或百分比
- python-3.x - 蒙蒂霍尔问题没有按预期工作
- gitlab-ci - Gitlab 跑步者:如何在跑步者中禁用使用缓存的 .git?
- c++ - 我们可以在没有原型声明的情况下在 main 之后定义函数吗?
- javascript - 如何在 vue-next 中使用带有 typescript 的自定义事件
- python - 降序当A小于B时,列表必须按升序排列,你能帮我设置B < A的降序吗
- jsx - 如何使用(Adobe ExtendScript)克隆/复制包含子文件夹和文件的文件夹到另一个文件夹