mongodb基础整理篇————聚合操作[三]

前言

简单整理一下聚合操作。

正文

什么是聚合框架:

  1. 作用于一个或多个集合上

  2. 对集合的数据进行的一系列运算

  3. 将这些数据转换为期望的形式

从效果而言, 聚合框架相当于SQL 查询中的:

  1. Group By

  2. Left outer join

  3. as 等

整个聚合运算过程称为管道(pipeline), 它是由多个步骤组成的,每个管道:

  1. 接受一系列文档(原始数据)

  2. 每个步骤对这些文档进行一系列运算

  3. 结果文档输出给下一个步骤

步骤 作用 sql 等价运算符
$match 过滤 where
$project 投影 as
$sort 排序 ORDER BY
$group 分组 GROUP BY
$skip/$limit 结果限制 SKIP/LIMIT
$lookup 左外连接 LEFT OUTER JOIN

还有一些:$unwind 展开数组、$graphLookup 图搜索、$facet/ $bucket 分面搜索。

还有一些很常规的操作,比如说分页:

比如说查询分组:

数组展开:

区间分组:

多区域分组:

实操

  1. 总销售额

  1. 订单金额汇总

有些时候我们写mongo语句倒是好写,但是到了写代码的时候可能不是那么好写,那么可以使用mongo compass自动作为转换。

下一节,实操代码。

posted @ 2022-01-09 22:06  敖毛毛  阅读(170)  评论(0编辑  收藏  举报