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。③ 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 根据资源文档的排序获取最后一个文档数据
学的不是很多,大神当温习,新手当入门。