MongoDB菜鸟入门(三):创建用户使用鉴权、使用聚合aggregate
来源:互联网 发布:钢结构cad软件sts下载 编辑:程序博客网 时间:2024/05/29 14:22
一、创建用户
- 创建管理员账户
//以--auth启动数据库服务器mongod --dbpath=C:\data\shard\test --port 27000 --auth//以admin登录且切换到admin数据库mongo admin --port 27000//创建管理员db.createUser({user:"root",pwd:"12345",roles:["userAdminAnyDatabase"]})//登录db.auth("root","12345")
- 创建用户账户
一般我们用于连接使用的就是用户账户,用户帐户对集合拥有读写删除的权限,但是没有删除数据库的权限。
//以管理员账户切换到需要创建用户的数据库use test//创建用户账户db.createUser({user:"testuser",pwd:"12345",roles:["readWrite"]})
read:读权限
write:写权限
readWrite:读写权限
十四、聚合aggregate
文档类型:
- 使用$group
//以uid分组,查询uid和统计条数以num为域显示,类似sql语句的select uid,count(*) as num from tb group by uid;db.loginHistory.aggregate([{$group:{_id:"$uid",num:{$sum:1}}}])//以uid分组,查询uid和统计timestamp最小值以num为域显示,类似sql语句的select uid,min(timestamp) as num from tb group by uid;db.loginHistory.aggregate([{$group:{_id:"$uid",num:{$min:"$timestamp"}}}])
- 使用$project
//只显示域uid和timestamp,类似sql的select uid,timestamp from loginHistory;db.loginHistory.aggregate({$project:{uid:1,timestamp:1}})//不显示_id域db.loginHistory.aggregate({$project:{_id:0,uid:1,timestamp:1}})
- 使用$match,类似于sql的having
//匹配timestamp大于等于1502097028352的文档,类似sql的select uid,min(timestamp) from loginHistory group by uid having timestamp >= 1502097028352;db.loginHistory.aggregate([{$match:{timestamp:{$gte:"1502097028352"}}},{$group:{_id:"$uid",min:{$min:"$timestamp"}}}])
- 使用$skip跳过指定条数文档
//跳过1条文档类似sql的select uid,min(timestamp) from loginHistory group by uid having timestamp >= 1502097028352 limit 1;db.loginHistory.aggregate([{$match:{timestamp:{$gte:"1502097028352"}}},{$group:{_id:"$uid",min:{$min:"$timestamp"}}},{$skip:1}])
阅读全文
1 0
- MongoDB菜鸟入门(三):创建用户使用鉴权、使用聚合aggregate
- MongoDB aggregate聚合函数的使用
- MongoDB中聚合(aggregate)的使用
- mongodb-aggregate(聚合函数)
- Java中使用mongodb的aggregate聚合查询
- mongodb aggregate 聚合操作
- MongoDB aggregate聚合
- MongoDB aggregate 聚合管道
- mongodb 聚合aggregate 乘法
- MongoDB中的聚合 aggregate
- MongoDB aggregate() 聚合
- MongoDB | 聚合 aggregate
- MongoDB的聚合(aggregate)
- MongoDB的聚合函数 Aggregate
- MongoDB的聚合函数 Aggregate
- mongodb-aggregate聚合日期分组
- mongodb的聚合使用
- MongoDB 学习笔记六 aggregate GROUP使用
- 排列组合
- LeetCode 30
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->Web版本模块管理界面新增模块排序功能
- 最小生成树
- 数据库中间件02-部署MyCat
- MongoDB菜鸟入门(三):创建用户使用鉴权、使用聚合aggregate
- 8月9日集训
- java面试的一些问题
- 使用 MySQLi 和 PDO 向 MySQL 插入数据
- Hibernate框架知识整理
- vs2013创建动态链接库
- Eclipse开发过程中个VM Arguments的设置
- 正则匹配
- C#中Abstract 、Virtual和Override的使用,类的继承