mongodb——node中的mongodb数据库聚合aggregate()

聚合:将数据聚集到一起合起来 使用特定的表达式计算结果(总数 平均值 分组 )

db.collectionName.aggregate([{$group:{ key1:val, 自定义变量: {"聚合变量":"值" }}}])

聚合表达式

$sum 总数

$avg 平均值

$min $max

$addToSet 在结果文档中插入值 到一个数组中

$fist

$last

基本语法

db.collection.aggregate([
     {$match:{id:1000}},
     {$limit:5},
     {$group:{_id:"name", count: {$sum:1}}},
     {$sort:{count:-1}}
])
db.student.aggregate([{$group:{_id:"studentSum", count:{ $sum:1}}}])
// 查询学生 合并在一起 计算总数  $sum 1
db.student.aggregate([{$group:{_id:"studentSum", count:{ $sum:"$uage"}}}])
// 查询所有学生年龄的总和
db.student.aggregate([{$group:{_id:"studentSum", count:{ $avg:"$uage"}}}])
// 查询学生所有年龄的平均值 (如果学生本身没有年龄的字段 不参与计算和平均)
db.student.aggregate([{$group:{_id:"studentSum", ageList:{ $addToSet:"$uage"}}}])
// 查询所有学生 并使用addToSet 将所有学生的年龄放到数组 ageList中 并返回

猜你喜欢

转载自blog.csdn.net/YUHUI01/article/details/81255482
今日推荐