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

Posted 程序员其实就是一个写文档的工作,代码只是文档的一部分,一切皆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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自动作为转换。

下一节,实操代码。

以上是关于mongodb基础整理篇————聚合操作[三]的主要内容,如果未能解决你的问题,请参考以下文章

MongoDB聚合操作总结

MongoDB聚合操作总结

04 MongoDB各种查询操作 以及聚合操作总结

04 MongoDB各种查询操作 以及聚合操作总结

python3操作MongoDB的crud以及聚合案例,代码可直接运行(python经典编程案例)

《MongoDB入门教程》第22篇 聚合操作