<p><img alt="" height="822" src="https://i-blog.csdnimg.cn/direct/7fc4e241a5184ef194b7286a18ba4383.png" width="912" /></p>
讯享网
MongoDB是一个基于分布式文件存储的数据库。由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系型数据库和非关系型数据库之间的产品,是非关系型数据库当中功能最丰富,最像关系型数据库的。
本文所使用的MongoDB版本为,大家可以任选或版本进行安装,步骤都是一样的。
Windows下的安装
- 下载MongoDB安装包,选择版本安装,下载地址:Download MongoDB Community Server | MongoDB
- 运行MongoDB安装包并选择自定义安装,设置好安装路径;
安装成功
Linux下的安装
- 下载MongoDB的Docker镜像;
讯享网
- 使用Docker命令启动MongoDB服务;
Linux下设置安全认证
- 有时候我们需要为MongoDB设置账号,可以使用如下命令启动;
讯享网
- 然后我们需要进入容器中的MongoDB客户端;
- 之后在集合中创建一个账号用于连接,这里创建的是基于角色的超级管理员帐号;
讯享网
- 创建完成后验证是否可以登录;
MongoDB的客户端工具有很多,直接使用简单的 Navicat 即可
MongoDB是非关系型数据库当中最像关系型数据库的,所以我们通过它与关系型数据库的对比,来了解下它的概念。
SQL概念
MongoDB概念
解释/说明
database
database
数据库
table
collection
数据库表/集合
row
document
数据记录行/文档

column
field
数据字段/域
index
index
索引
primary key
primary key
主键,MongoDB自动将_id字段设置为主键
- 创建数据库,使用命令去创建数据库,当插入第一条数据时会创建数据库,例如创建一个数据库;
讯享网
- 删除数据库,使用db对象中的方法来删除;
- 创建集合,使用db对象中的方法来创建集合,例如创建一个集合;
讯享网
- 删除集合,使用collection对象的方法来删除集合,例如删除一个集合;
上面的数据库和集合操作是在MongoDB的命令行客户端中进行的,下面的文档操作都是在Studio 3T中进行的。
插入文档
- MongoDB通过collection对象的方法向集合中插入文档,语法如下;
讯享网
- 使用collection对象的方法来插入文档,例如插入一个文档;
- 使用collection对象的方法可以获取文档,例如获取所有的文档;
讯享网
更新文档
- MongoDB通过collection对象的来更新集合中的文档,语法如下;
讯享网
- 将title为的所有文档的title修改为;
- 除了方法以外,方法可以用来替换已有文档,语法如下;
讯享网
- 这次我们将ObjectId为的文档的title改为;
删除文档
- MongoDB通过collection对象的方法来删除集合中的文档,语法如下;
讯享网
- 删除title为的所有文档;
查询文档
- MongoDB通过collection对象的方法来查询文档,语法如下;
讯享网
- 查询集合中的所有文档;
讯享网
- MongoDB中的条件操作符,通过与SQL语句的对比来了解下;
操作
格式
SQL中的类似语句
等于
小于

小于或等于
大于
大于或等于
不等于
- 条件查询,查询title为的所有文档;
- 条件查询,查询likes大于50的所有文档;
讯享网
- AND条件可以通过在方法传入多个键,以逗号隔开来实现,例如查询title为并且by为的所有文档;
- OR条件可以通过使用操作符实现,例如查询title为或的所有文档;
讯享网
- AND 和 OR条件的联合使用,例如查询likes大于50,并且title为或者的所有文档。
Limit与Skip操作
- 读取指定数量的文档,可以使用方法,语法如下;
讯享网
- 只查询article集合中的2条数据;
- 跳过指定数量的文档来读取,可以使用方法,语法如下;
讯享网
- 从第二条开始,查询article集合中的2条数据;
排序
- 在MongoDB中使用方法对数据进行排序,方法通过参数来指定排序的字段,并使用1和-1来指定排序方式,1为升序,-1为降序;
讯享网
- 按article集合中文档的likes字段降序排列;
索引
- 索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录。
- MongoDB使用方法来创建索引,语法如下;
讯享网
- 给title和description字段创建索引,1表示升序索引,-1表示降序索引,指定以后台方式创建;
- 查看article集合中已经创建的索引;
讯享网
聚合
- MongoDB中的聚合使用方法,类似于SQL中的group by语句,语法如下;
讯享网
- 聚合中常用操作符如下;
操作符
描述
\(sum</p> </td><td> <p id="ua7fb5328">计算总和</p> </td></tr><tr><td> <p id="u3c3281db">\)avg
计算平均值
\(min</p> </td><td> <p id="u1f1a6bfb">计算最小值</p> </td></tr><tr><td> <p id="u4ae98d2a">\)max
计算最大值
- 根据by字段聚合文档并计算文档数量,类似与SQL中的count()函数;
讯享网
- 根据by字段聚合文档并计算likes字段的平局值,类似与SQL中的avg()语句;
讯享网
正则表达式
- MongoDB使用操作符来设置匹配字符串的正则表达式,可以用来模糊查询,类似于SQL中的like操作;
- 例如查询title中包含的文档;
- 不区分大小写的模糊查询,使用操作符;
讯享网

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/197960.html