![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MongoDB
fearhai
世界上没有做不成的事,只有坚持不下去的人!
展开
-
MongoDB数据库操作
启动 sudo service mongod start停止sudo service mongod stopdb查看当前数据库名称db.stats()查看当前数据库信息终端退出连接exit或ctrl+c数据库切换查看当前数据库名称db查看所有数据库名称 列出所有在物理上存在的数据库show dbs切换数据库 如果数据库不存在,...翻译 2018-09-04 17:32:09 · 117 阅读 · 0 评论 -
MongoDB备份和恢复
备份语法mongodump -h dbhost -d dbname -o dbdirectory-h:服务器地址,也可以指定端口号 -d:需要备份的数据库名称 -o:备份的数据存放位置,此目录中存放着备份出来的数据 例1sudo mkdir test1baksudo mongodump -h 192.168.196.128:27017 -d test1 -o ~/Desk...翻译 2018-09-05 11:36:21 · 99 阅读 · 0 评论 -
MongoDB安全
超级管理员为了更安全的访问mongodb,需要访问者提供用户名和密码,于是需要在mongodb中创建用户 采用了角色-用户-数据库的安全管理方式 常用系统角色如下: root:只在admin数据库中可用,超级账号,超级权限 Read:允许用户读取指定数据库 readWrite:允许用户读写指定数据库 创建超级管理用户use admindb.createUser({ ...翻译 2018-09-05 07:20:59 · 102 阅读 · 0 评论 -
MongoDB聚合中拆分
$unwind将文档中的某一个数组类型字段拆分成多条,每条包含数组中的一个值语法1对某字段值进行拆分db.集合名称.aggregate([{$unwind:'$字段名称'}])构造数据db.t2.insert({_id:1,item:'t-shirt',size:['S','M','L']})查询db.t2.aggregate([{$unwind:'$size'}...翻译 2018-09-05 07:01:38 · 2717 阅读 · 0 评论 -
MongoDB聚合的投影和排序
投影:$project修改输入文档的结构,如重命名、增加、删除字段、创建计算结果 例1:查询学生的姓名、年龄db.stu.aggregate([ {$project:{_id:0,name:1,age:1}}])例2:查询男生、女生人数,输出人数db.stu.aggregate([ {$group:{_id:'$gender',counter:{$sum:1}...翻译 2018-09-05 07:00:23 · 826 阅读 · 0 评论 -
MongoDB聚合中分组和过滤
分组:$group将集合中的文档分组,可用于统计结果 _id表示分组的依据,使用某个字段的格式为'$字段' 例1:统计男生、女生的总人数db.stu.aggregate([ {$group: { _id:'$gender', counter:{$sum:1} } }])Group b...翻译 2018-09-05 06:52:12 · 11003 阅读 · 0 评论 -
MongoDB聚合中Limit和skip
Limit方法limit():用于读取指定数量的文档 语法:db.集合名称.find().limit(NUMBER)参数NUMBER表示要获取文档的条数 如果没有指定参数则显示集合中的所有文档 例1:查询2条学生信息db.stu.find().limit(2)skip方法skip():用于跳过指定数量的文档 语法:db.集合名称.find().skip(NU...翻译 2018-09-05 06:49:28 · 550 阅读 · 0 评论 -
MongoDB的排序和统计
排序方法sort(),用于对结果集进行排序 语法db.集合名称.find().sort({字段:1,...})参数1为升序排列 参数-1为降序排列 例1:根据性别降序,再根据年龄升序db.stu.find().sort({gender:-1,age:1}) 统计个数方法count()用于统计结果集中文档条数 语法db.集合名称.find({条件}).cou...翻译 2018-09-05 06:43:05 · 14757 阅读 · 0 评论 -
MongoDB的投影和去重
投影在查询到的返回结果中,只选择必要的字段,而不是选择一个文档的整个字段 如:一个文档有5个字段,需要显示只有3个,投影其中3个字段即可 语法: 参数为字段与值,值为1表示显示,值为0不显示db.集合名称.find({},{字段名称:1,...})对于需要显示的字段,设置为1即可,不设置即为不显示 特殊:对于_id列默认是显示的,如果不显示需要明确设置为0 例1db.s...翻译 2018-09-05 06:41:36 · 403 阅读 · 0 评论 -
MongoDB的Limit和skip查询
Limit方法limit():用于读取指定数量的文档 语法:db.集合名称.find().limit(NUMBER)参数NUMBER表示要获取文档的条数 如果没有指定参数则显示集合中的所有文档 例1:查询2条学生信息db.stu.find().limit(2)skip方法skip():用于跳过指定数量的文档 语法:db.集合名称.find().skip(NU...翻译 2018-09-04 20:05:47 · 738 阅读 · 0 评论 -
MongoDB查询
数据查询基本查询方法find():查询db.集合名称.find({条件文档})方法findOne():查询,只返回第一个db.集合名称.findOne({条件文档})方法pretty():将结果格式化db.集合名称.find({条件文档}).pretty()比较运算符等于,默认是等于判断,没有运算符 小于$lt 小于或等于$lte 大于$gt 大于...翻译 2018-09-04 19:57:05 · 320 阅读 · 0 评论 -
MongoDB操作
插入语法db.集合名称.insert(document)插入文档时,如果不指定_id参数,MongoDB会为文档分配一个唯一的ObjectId 例1db.stu.insert({name:'gj',gender:1})例2s1={_id:'20160101',name:'hr'}s1.gender=0db.stu.insert(s1)简单查询语法db...翻译 2018-09-04 19:26:10 · 91 阅读 · 0 评论 -
MongoDB集合操作
集合创建语法db.createCollection(name, options)name是要创建的集合的名称 options是一个文档,用于指定集合的配置 选项参数是可选的,所以只需要到指定的集合名称。以下是可以使用的选项列表: 例1:不限制集合大小db.createCollection("stu")例2:限制集合大小,后面学会插入语句后可以查看效果 参数cap...翻译 2018-09-04 17:54:07 · 346 阅读 · 0 评论 -
MongoDB与python交互
进入虚拟环境sudo pip install pymongo或源码安装python setup.py引入包pymongoimport pymongo连接,创建客户端client=pymongo.MongoClient("localhost", 27017)或者client=pymongo.MongoClient('mongodb://用户名:密码@ip地址:端口号/...翻译 2018-09-06 17:10:46 · 131 阅读 · 0 评论