MongoDB学习笔记

MongoDB是一个基于分布式文件存储的数据库是一个介于关系数据库和非关系数据库之间的产品。

之前都是听说过大概是什么东西,如今用到了就学习总结了一下。小白入门,不喜勿喷,有大神希望指点不足。

1.mongodb下载地址:
https://www.mongodb.com/download-center

2:管理工具robo

https://robomongo.org/

1.创建数据库
use log

2.删除数据库
db.dropDatabase()

3.创建集合
db.createCollection(name, options)


Options :

① autoIndexId: (可选)如为 true,自动在 _id 字段创建索引。默认为 false。

② capped:可选)如果为 true,则创建固定集合。固定集合是指有着固定大小的集合,当达到最大值时,它会自动覆盖最早的文档。当该值为 true 时,必须指定 size 参数。

③ size: (可选)为固定集合指定一个最大值(以字节计)。如果 capped 为 true,也需要指定该字段。

4.删除集合
db.collection.drop()

5.插入文档
db. collection.insert(document)

6.更新文档
db.collection.update(sql)

db.log.update({‘title’:’ceshi’},{$set:{‘title’:试卷管理'}})

7.删除文档
db.collection.remove()

db.log.remove({‘title’:试卷管理'})

基本操作查询:

find()/findOne()单条件匹配查询

mongodb数据库的查询操作即使用find()或者findOne()函数,也可根据不同的条件进行查询。查询的写法(以find()为例)可以如下:
db.log.find()

db.log.find({})

2.范围查询
"$lt“           "<“

"$lte“         "<=“

"$gt“           ">“

"$gte“         ">=“

"$ne“           "!="

db.log.find({"type":{"$gt":0,"$lte":30}})

3. in条件查询

in (‘值1’,‘值1’.....)

db.log.find({"x":{"$in":['值1','值2',.....]}})

4. $or或查询

= 'xxx' or 字段2 in ( 'xxx')

db.log.find({"$or":[{"x":{"$in":['值1','值2'...]}},{"y":"3"}]})

5.$exists 判断文档属性是否存在
 
db.log.find({"name":{"$exists":true}})   --查找属性name存在的文档

db.log.find({"name":{"$exists":false}})  --查找属性name不存在的文档

6.排序

.sort({KEY:1})

其中 1 为升序排列,而-1是用于降序排列。

7.聚合操作

.aggregate(AGGREGATE_OPERATION)

db.mycol.aggregate([{$group : {_id : "$type", num_tutorial : {$sum : 1}}}])

$sum        计算总和。

$avg          计算平均值

$max         获取集合中所有文档对应值得最大值

$first          根据资源文档的排序获取第一个文档数据

$last           根据资源文档的排序获取最后一个文档数据

学的不是很多,大神当温习,新手当入门。

你可能感兴趣的:(MongoDB)