MongoDB数据查询

本文涉及的产品
云数据库 MongoDB,通用型 2核4GB
简介: 1、find函数的介绍和使用 MongoDB数据查询使用find函数,其功能与SQL中的select函数相同,可提供与关系型数据库类似的许多功能,包括映射、排序等。db.集合名.find(query,fields,limit,skip)query指查询条件,相当于SQL中的where语句。例如: db.student.find({name:"joe","age"

1、find函数的介绍和使用
MongoDB数据查询使用find函数,其功能与SQL中的select函数相同,可提供与关系型数据库类似的许多功能,包括映射、排序等。

db.集合名.find(query,fields,limit,skip)
query指查询条件,相当于SQL中的where语句。
例如: db.student.find({name:"joe","age":{$lt:22}})
fields用于字段映射(projection)语法格式:{field:0}
例如:db.student.find({"age":{$lt:22}},{"_id":0,"name":1})

limit用于限制查询结果集的文档数量。
skip用于跳过一定数据量的结果,设置第一条返回文档的偏移量。
需要注意:
不支持多集合间的连接查询,find函数一次查询只能针对一个集合。
find函数参数为空或者查询条件为空文档时,会返回集合中的所有文档,例如:db.student.find() 或 db.student.find({})
除了将limit和skip作为find函数的参数外,还可以单独使用limit和skip函数来修饰查询结果。
查询结果默认是无序的,如果需要对结果进行排序,可以使用sort函数。
findOne()只会返回第一条数据。
当查询的结果文档数量很大时,为了加快数据查询的速度可以创建索引。
除了使用find函数实现基本查询外,MongoDB还提供了聚合框架,用于复杂查询。
2、比较查询符

$eq/$ne   等于/不等于
$gt/$gte 大于/大于等于
$lt/$lte 小于/小于等于
$in/$nin  包含/不包含

3、逻辑查询操作符
可连接多个查询条件,用于逻辑与、或、非以及取反操作。

$and$or$nor$not   取反

4、元素查询操作符

$exits   按照字段是否存在来查询文档
$type   选择字段值为指定的BSON数据类型编号的文档
$where操作符功能强大且灵活,它可以将JavaScript表达式的字符串或JavaScript函数作为查询语句的一部分。在JavaScript表达式和函数中,可以使用this或obj来引用当前操作的文档。
例如: db.collection.find({ $where:"this.credits==this.debits"})
JavaScript表达式或函数返回true时,才会返回当前文档。
查询时,$where 操作符不能使用索引,每个文档需要从BSON对象转换成JavaScript对象后,才能通过$where表达式来运行。因此,它比常规查询要慢很多,一般情况下要避免使用$where查询。
相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
目录
相关文章
|
6月前
|
NoSQL MongoDB
12 MongoDB - 数据查询(消除重复)
12 MongoDB - 数据查询(消除重复)
139 0
|
6月前
|
NoSQL MongoDB
11 MongoDB - 数据查询(统计个数)
11 MongoDB - 数据查询(统计个数)
237 0
|
6月前
|
NoSQL MongoDB
10 MongoDB - 数据查询(排序)
10 MongoDB - 数据查询(排序)
25 0
|
6月前
|
NoSQL MongoDB
09 MongoDB - 数据查询(投影)
09 MongoDB - 数据查询(投影)
38 0
|
6月前
|
NoSQL MongoDB
08 MongoDB - 数据查询(Limit 与 Skip)
08 MongoDB - 数据查询(Limit 与 Skip)
41 0
|
6月前
|
NoSQL MongoDB
07 MongoDB - 数据查询
07 MongoDB - 数据查询
16 0
|
1月前
|
存储 NoSQL MongoDB
MongoDB如何创建数据库
MongoDB如何创建数据库
|
3天前
|
存储 NoSQL 关系型数据库
MongoDB非关系型数据库实战
【5月更文挑战第6天】MongoDB,流行的NoSQL数据库,以其灵活的数据模型和高性能备受青睐。本文介绍了MongoDB的基础,包括文档型数据库特性、安装配置、数据操作。通过电商订单管理的实战案例,展示了MongoDB在处理复杂数据结构和大规模数据时的优势,适用于电商、游戏、视频直播等场景。MongoDB的索引、全文搜索和地理空间功能进一步增强了其实用性。注意性能优化和扩展性以确保系统稳定性和可靠性。
|
10天前
|
弹性计算 NoSQL Shell
一键安装 MongoDB 数据库脚本
【4月更文挑战第29天】
16 4