MongoDB是一个高性能、可扩展、易操作的非关系型数据库,适合处理大量数据和需要快速数据访问的应用程序。它使用文档数据模型,而不是传统的表结构,这使得它非常适合存储和查询复杂的数据结构。
以下是MongoDB的一些主要特点和功能:
- 文档数据模型:MongoDB使用文档数据模型,这意味着它可以存储和查询具有复杂结构的数据,比如JSON和XML。
- 查询语言:MongoDB的查询语言非常强大,可以轻松地执行各种操作,如筛选、排序、聚合等。
- 性能和可扩展性:MongoDB是高性能的数据库,可以处理大量数据,并且具有良好的可扩展性。
- 易操作:MongoDB的界面简单易用,使得管理和操作数据库变得非常容易。
- 复制和故障恢复:MongoDB支持复制和故障恢复,这使得它非常可靠,可以保证数据的完整性和可用性。
- 灵活的架构:MongoDB的架构非常灵活,可以根据需要进行定制和扩展。
总之,MongoDB是一个非常流行的非关系型数据库,适用于各种应用程序和场景。
MongoDB 是免费开源的跨平台的非关系型数据库。MongoDB 的数据以类似于 JSON 格式的二进制文档存储。
{
name: "Angeladady",
age: 18,
hobbies: ["Steam", "Guitar"]
}
启动 Mongodb 服务:
mongod --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --fork
进入 mongodb 后台管理:
$ cd /usr/local/mongodb4/bin $ ./mongo
概念
RDBMS 与 MongoDB 对应的术语如下
创建数据库
use DATABASE_NAME
以下实例我们创建了数据库 runoob:
> use runoob switched to db runoob > db runoob >
插入数据:
> db.runoob.insert({"name":"菜鸟教程"}) WriteResult({ "nInserted" : 1 })
删除数据库:
db.dropDatabase()
创建集合
db.createCollection(name, options)
> db.createCollection("runoob") # 创建集合,类似数据库中的表
在 MongoDB 中,你不需要创建集合。当你插入一些文档时,MongoDB 会自动创建集合。
如这一条,会自动创建一个runoob集合。
删除集合
db.collection.drop()
mongodb中的集合就相当于mysql中的表
如删除runoob1集合,db.runoob1.drop()
mongodb中的文档相当于mysql中的数据
插入文档
MongoDB 使用 insert() 或 save() 方法向集合中插入文档,语法如下:
db.COLLECTION_NAME.insert(document) 或 db.COLLECTION_NAME.save(document)
MongoDB 更新文档
MongoDB 使用 update() 和 save() 方法来更新集合中的文档。
update() 方法
update() 方法用于更新已存在的文档。语法格式如下:
db.collection.update( <query>, <update>, { upsert: <boolean>, multi: <boolean>, writeConcern: <document> } )
save() 方法
save() 方法通过传入的文档来替换已有文档,_id 主键存在就更新,不存在就插入。语法格式如下:
db.collection.save( <document>, { writeConcern: <document> } )
MongoDB 删除文档
remove() 方法的基本语法格式如下所示:
db.collection.remove( <query>, <justOne> )
MongoDB 查询文档
MongoDB 查询数据的语法格式如下:
db.collection.find(query, projection)>db.col.find().pretty()
pretty() 方法以格式化的方式来显示所有文档。
MongoDB 条件操作符
条件操作符用于比较两个表达式并从mongoDB集合中获取数据。
在本章节中,我们将讨论如何在MongoDB中使用条件操作符。
MongoDB中条件操作符有:
- (>) 大于 - $gt
- (<) 小于 - $lt
- (>=) 大于等于 - $gte
- (<= ) 小于等于 - $lte
$type操作符是基于BSON类型来检索集合中匹配的数据类型,并返回结果。
MongoDB Limit() 方法
如果你需要在MongoDB中读取指定数量的数据记录,可以使用MongoDB的Limit方法,limit()方法接受一个数字参数,该参数指定从MongoDB中读取的记录条数。
语法
limit()方法基本语法如下所示:
>db.COLLECTION_NAME.find().limit(NUMBER)
MongoDB sort() 方法
在 MongoDB 中使用 sort() 方法对数据进行排序,sort() 方法可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而 -1 是用于降序排列。
语法
sort()方法基本语法如下所示:
>db.COLLECTION_NAME.find().sort({KEY:1})
关闭 mongoDB 服务
> use admin > db.shutdownServer()
使用 exit 或 Ctrl + C 断开连接:
> exit