您现在的位置是:课程教程文章
mongodb如何统计数据?
2023-12-18 18:11课程教程文章 人已围观
-
挑战万元高薪系列MongoDB全套精讲视频课程
挑战万元高薪系列MongoDB全套精讲视频课程MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中... -
带你玩转MongoDB
带你玩转MongoDB课前预习资料请添加助教小姐姐微信领取 报名之后请一定要加上微信领取学习... -
Oracle/MySQL/MongoDB/Redis/NoSQL/NewSQL企业级调优
Oracle/MySQL/MongoDB/Redis/NoSQL/NewSQL企业级调优... -
MongoDB 数据库概述
MongoDB 数据库概述本课程将介绍文档型数据库以及MongoDB的基础概念。课程将比较关系型数据库和...
用mongodb中的aggregate统计数据:
应用一:统计name的数量和总数;
db.collection.aggregate([ {$group:{_id:"$name",count:{$sum:1},total:{$sum:"$num"}} ]);
应用二:统计status=1的name的数量;
db.collection.aggregate([ {$match:{status:1}}, {$group:{_id:"$name",count:{$sum:1}}} ]);
应用三:统计name的数量,并且数量为小于2的;
db.collection.aggregate([ {$group:{_id:"$name",count:{$sum:1}}, {$match:{count:{$lt:2}}} ]);
应用四:统计stauts=1的name的数量,并且数量为1的;
db.collection.aggregate([ {$match:{status:1}}, {$group:{_id:"$name",count:{$sum:1}}}, {$match:{count:1}} ]);
多列group,根据name和status进行多列
db.collection.aggregate([ {$group:{_id:{name:"$name",st:"$status"},count:{$sum:1}}} ]); $project该操作符很简单, db.collection.aggregate([ {$project:{name:1,status:1}} ]);
结果是,只有_id,name,status三个字段的表数据,相当于sql表达式 select _id,name,status from collection
操作符介绍:
$project:包含、排除、重命名和显示字段
$match:查询,需要同find()一样的参数
$limit:限制结果数量
$skip:忽略结果的数量
$sort:按照给定的字段排序结果
$group:按照给定表达式组合结果
$unwind:分割嵌入数组到自己顶层文件
课程教程:mongodb如何统计数据?上一篇:mongodb如何做主从?
下一篇:没有了