文档的基本查询

简介: 本文介绍了MongoDB中查询文档的基本操作。通过`find()`和`findOne()`方法可实现全集合查询及条件查询,如按`userid`筛选;支持投影查询,指定返回字段,控制是否显示`_id`,灵活获取所需数据。

(1)查询所有
如果我们要查询spit集合的所有文档,我们输入以下命令
db.comment.find()

db.comment.find({})
这里你会发现每条文档会有一个叫_id的字段,这个相当于我们原来关系数据库中表的主键,当你在插入文档记录时没有指定该字段, MongoDB会自动创建,其类型是ObjectID类型。
如果我们在插入文档记录时指定该字段也可以,其类型可以是ObjectID类型,也可以是MongoDB支持的任意类型。
如果我想按一定条件来查询,比如我想查询userid为1003的记录,怎么办?很简单!只 要在find()中添加参数即可,参数也是json格式,如下:
db.comment.find({userid:'1003'})
如果你只需要返回符合条件的第一条数据,我们可以使用findOne命令来实现,语法和find一样。如:查询用户编号是1003的记录,但只最多返回符合条件的第一条记录:
db.comment.findOne({userid:'1003'})
(2)投影查询(Projection Query):
如果要查询结果返回部分字段,则需要使用投影查询(不显示所有字段,只显示指定的字段)。如:查询结果只显示 _id、userid、nickname :
db.comment.find({userid:"1003"},{userid:1,nickname:1})
{ "_id" : "4", "userid" : "1003", "nickname" : "凯撒" }
{ "_id" : "5", "userid" : "1003", "nickname" : "凯撒" }
默认 _id 会显示。如:查询结果只显示 、userid、nickname ,不显示 _id :
db.comment.find({userid:"1003"},{userid:1,nickname:1,_id:0})
{ "userid" : "1003", "nickname" : "凯撒" }
{ "userid" : "1003", "nickname" : "凯撒" }
再例如:查询所有数据,但只显示 _id、userid、nickname :
db.comment.find({},{userid:1,nickname:1})

相关文章
|
异构计算
Magisk模块:停用HW叠加层
Magisk模块:停用HW叠加层
6889 0
Magisk模块:停用HW叠加层
|
6月前
|
XML Java 数据格式
Spring Boot是什么
Spring Boot 于2013年启动,旨在简化Spring应用开发。它通过自动配置和内嵌服务器,减少XML配置,实现开箱即用,提升开发效率,是Spring生态中不可或缺的快速开发利器。
|
6月前
|
XML Java 数据格式
@Configuration
被@Configuration标注的类会被Spring容器识别为配置类,等同于XML配置文件。通过@Bean可注册Bean实例,配合AnnotationConfigApplicationContext可启动IOC容器并加载所有Bean,包括配置类自身。
|
6月前
|
SQL 关系型数据库 Java
分页
本文介绍了五种分页实现方式:MyBatis自带RowBounds内存分页、PageHelper插件分页、原生SQL分页、数组分页(查全量后subList)及拦截器分页。前两者属逻辑分页,数据全加载至内存,小数据量高效但大数量易溢出;后三者为物理分页,通过SQL或拦截器实现真实分页,适用于大数据量场景。推荐优先使用物理分页以提升性能与稳定性。(238字)
|
6月前
|
存储 Java 数据库
项目《四方保险》
本系列内容围绕《四方保险》系统展开,涵盖系统架构、数据库设计、保险产品组成与分类、微服务划分、文件上传与垃圾处理、性能优化、AOP应用、保费计算逻辑、支付流程、埋点设计及短信平台实现等核心话题,全面梳理保险系统开发中的关键技术与业务实践。
|
6月前
|
监控 Java API
Spring Boot中的切面AOP处理
AOP(面向切面编程)通过分离关注点,将核心业务与辅助逻辑解耦。Spring Boot 中通过@Aspect、@Pointcut等注解实现AOP,可便捷地进行日志记录、性能监控、异常处理等操作,提升代码模块化与可维护性。(238字)
|
3月前
|
人工智能 监控 机器人
阿里云/本地部署OpenClaw(Clawdbot)AI助手集成飞书+API调用不设限指南!
“API调用超额”曾是OpenClaw(前身为Clawdbot、Moltbot)用户的高频痛点——飞书API此前的配额限制,让需要高频触发任务、24小时运行的用户束手束脚,只能刻意减少交互频率,严重影响使用体验。而2026年飞书开放平台的重大更新,彻底解决了这一问题:全面放开API调用上限,取消配额限制,无需申请流程、零门槛免费使用,让OpenClaw几乎可以无限调用飞书API。
2385 1
|
8月前
|
机器学习/深度学习 算法 数据可视化
6G时代的新型延迟多普勒通信范式:正交时频空间(OTFS)综述
本文综述正交时频空间(OTFS)技术,一种面向6G高移动性场景的新型延迟-多普勒域通信范式。OTFS通过在延迟-多普勒域调制信号,克服传统OFDM在高速移动下的多普勒扩展难题,具备信道稳定性强、抗干扰能力优、峰均比低等优势。文章系统阐述OTFS的信道模型、调制原理、收发机设计、ISAC一体化及在卫星、水声、可见光等新兴场景的应用前景,为其在6G空天地海一体化网络中的应用提供理论支撑与技术路径。
1559 0
6G时代的新型延迟多普勒通信范式:正交时频空间(OTFS)综述
|
12月前
|
机器学习/深度学习 人工智能 JSON
DistilQwen-ThoughtX 蒸馏模型在 PAI-ModelGallery 的训练、评测、压缩及部署实践
通过 PAI-ModelGallery,可一站式零代码完成 DistilQwen-ThoughtX 系列模型的训练、评测、压缩和部署。
|
缓存 Kubernetes 容灾
如何基于服务网格构建高可用架构
分享如何利用服务网格构建更强更全面的高可用架构

热门文章

最新文章