文档的分页查询

简介: MongoDB提供统计、分页与排序查询功能:`count()`统计记录数,支持条件筛选;`limit()`限制返回条数,`skip()`跳过指定数量,实现分页;`sort()`按字段升序(1)或降序(-1)排序。三者联合使用时,执行顺序为sort→skip→limit。

3.5.1 统计查询
统计查询使用count()方法,语法如下:
db.collection.count(query, options)
(1)统计所有记录数
统计comment集合的所有的记录数:
db.comment.count()
(2)按条件统计记录数
例如:统计userid为1003的记录条数
db.comment.count({userid:"1003"})
提示: 默认情况下 count() 方法返回符合条件的全部记录条数。
3.5.2 分页列表查询
可以使用limit()方法来读取指定数量的数据,使用skip()方法来跳过指定数量的数据。 基本语法如下所示:
db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER)
如果你想返回指定条数的记录,可以在find方法后调用limit来返回结果(TopN),默认值20,例如:
db.comment.find().limit(3)
skip方法同样接受一个数字参数作为跳过的记录条数。(前N个不要),默认值是0
db.comment.find().skip(3)
分页查询:需求:每页2个,第二页开始:跳过前两条数据,接着值显示3和4条数据
//第一页
db.comment.find().skip(0).limit(2)
//第二页
db.comment.find().skip(2).limit(2)
//第三页
db.comment.find().skip(4).limit(2)
3.5.3 排序查询
sort() 方法对数据进行排序,sort() 方法可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而 -1 是用于降序排列。
语法如下所示:
db.COLLECTION_NAME.find().sort({KEY:1})

db.集合名称.find().sort(排序方式)
例如:
对userid降序排列,并对访问量进行升序排列
db.comment.find().sort({userid:-1,likenum:1})
提示:
skip(), limilt(), sort()三个放在一起执行的时候,执行的顺序是先 sort(), 然后是 skip(),最后是显示的 limit(),和命令编写顺序无关。

相关文章
|
2月前
|
SpringCloudAlibaba Java Nacos
SpringCloud Alibaba诞生
阿里基于Spring Cloud打造Alibaba生态,推出Nacos、Sentinel、Seata等核心组件,覆盖服务发现、配置管理、流量控制与分布式事务,形成完整微服务解决方案,获Spring官方认可,推动Spring Cloud在企业级场景高效落地。
|
存储 网络协议 物联网
Android集成MQTT教程:实现高效通信和实时消息传输
Android集成MQTT教程:实现高效通信和实时消息传输
3805 0
|
2月前
|
存储
初始化Map大小并非用多少指定多少
初始化HashMap时,指定容量并非直接生效,而是会调整为最近的2的幂次(如1变2,7变8)。为避免扩容开销,建议使用Guava工具Maps.newHashMapWithExpectedSize(),或手动按公式:容量 = 预期元素数 / 0.75 + 1 设置。
|
2月前
|
SQL 安全 Java
强化 SQL 语句
应结合参数化查询、预编译语句等技术防止SQL注入,严格校验输入并转义特殊字符。错误信息需捕获并屏蔽,避免泄露数据库细节,辅助攻击者。预编译语句若未正确使用绑定变量,仍存在风险。
|
2月前
|
运维 开发工具 git
生产环境缺陷管理
在大型团队中,多分支开发易导致bug修复遗漏,引发严重生产事故。我们基于go-git打造通用工具git-poison,实现跨分支bug追溯与自动化管理,降低对人工沟通的依赖,提升协作效率与代码安全性,避免“重复踩坑”。
|
2月前
|
NoSQL MongoDB
删除文档
MongoDB中删除文档使用db.集合名称.remove(条件)语法。如:db.comment.remove({})可清空全部数据,慎用;删除指定_id记录则用db.comment.remove({_id:"1"})。
|
2月前
|
SQL 存储 安全
盲注和二阶 SQL 注入
SQL盲注通过延迟响应等间接方式探测数据库漏洞,获取敏感信息或篡改数据。攻击者利用sleep()函数或耗时操作判断语句执行情况。二阶SQL注入则利用存储后二次执行的数据,隐蔽性强,需结合参数化查询与输入验证防范。
|
2月前
|
SQL 安全 数据库
SQL注入解释
SQL注入是攻击者通过恶意输入篡改数据库查询的攻击方式,因输入验证不足或SQL语句拼接不当导致。其危害巨大,OWASP将其列为Web应用头号安全威胁,需通过参数化查询等措施防范。
|
2月前
|
SQL 运维 前端开发
生产环境发布管理
大型团队中,多环境发布流程复杂。本文详解基于自动化平台的dev→test→pre→prod全流程部署方案,涵盖各环境职责:开发联调、测试集成、灰度验证与生产发布,实现高效协作与快速回滚,提升发布稳定性与效率。(238字)
|
2月前
|
Cloud Native 微服务
SpringCloud特点
一款优秀的微服务解决方案,遵循“约定大于配置”理念,组件丰富、功能齐全,支持灵活扩展与开箱即用,启动迅速,完美适配云原生架构,助力应用高效部署于云环境。