mongodb基础整理篇————聚合操作[三]
前言
简单整理一下聚合操作。
正文
什么是聚合框架:
- 
作用于一个或多个集合上 
- 
对集合的数据进行的一系列运算 
- 
将这些数据转换为期望的形式 
从效果而言, 聚合框架相当于SQL 查询中的:
- 
Group By 
- 
Left outer join 
- 
as 等 
整个聚合运算过程称为管道(pipeline), 它是由多个步骤组成的,每个管道:
- 
接受一系列文档(原始数据) 
- 
每个步骤对这些文档进行一系列运算 
- 
结果文档输出给下一个步骤 
| 步骤 | 作用 | sql 等价运算符 | 
|---|---|---|
| $match | 过滤 | where | 
| $project | 投影 | as | 
| $sort | 排序 | ORDER BY | 
| $group | 分组 | GROUP BY | 
| $skip/$limit | 结果限制 | SKIP/LIMIT | 
| $lookup | 左外连接 | LEFT OUTER JOIN | 
还有一些:$unwind 展开数组、$graphLookup 图搜索、$facet/ $bucket 分面搜索。
还有一些很常规的操作,比如说分页:

比如说查询分组:

数组展开:

区间分组:

多区域分组:

实操
- 总销售额

- 订单金额汇总

有些时候我们写mongo语句倒是好写,但是到了写代码的时候可能不是那么好写,那么可以使用mongo compass自动作为转换。
结
下一节,实操代码。
 
                    
                 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号