是时候展现真正的实力了😂
MongoDB中聚合(aggregate)的使用
MongoDB中聚合主要是用于处理数据的,包括统计平均值、求和等操作,并且返回计算后的数据结果。
MongoDB聚合中的方法可以通过aggregate()来实现。
db.COLLECTION_NAME.aggregate(AGGREGATE_OPERATION)
接下来先看下管道操作符和表达式操作符:
管道操作符
常用管道操作符 | 含义 |
---|---|
$group | 将collection中的document分组,可以用来统计结果 |
$match | 过滤数据,找到匹配结果的文档 |
$project | 投影,修改输入文档的结构(例如重命名,增加、删除字段等) |
$sort | 将结果排序 |
$limit | 限制输出的结果个数 |
$skip | 跳过指定数量的结果 |
$unwind | 将数组类型的字段进行拆分 |
表达式操作符
常用表达式 | 含义 |
---|---|
$sum | 计算总和 |
$avg | 平均值 |
$min | 求最小值 |
$max | 求最大值 |
$push | 将结果中的值插入到数组中 |
$first | 根据排序的结果获取第一个文档数据 |
$last | 根据排序的结果获取最后一个数据 |
操作方法
db.COLLECTION_NAME.aggregate([
{
$PIPELINE_OPERATION:{
field: { query }
}
}
])
db.COLLECTION_NAME.aggregate([
{
$EXPRESSION_OPERATION:{
key: value
}
}
])
That's all!