MongoDB 的 聚合管道 (Aggregation Pipeline) 是 MongoDB 中最强大的功能之一,用于处理数据并返回计算结果。 你可以把它想象成工厂里的流水线:文档(数据)进入管道,经过一个又一个的工序(Stage)处理(如筛选、分组、计算、变形),最后输出你需要的结果。 --- 1. 核心概念 管道 (Pipeline): 由多个阶段(Stage)组成的数组。 阶段 (Stage): 每个阶段对输入的文档进行某种操作(如过滤、分组),并将结果传递给下一个阶段。 表达式 (Expression): 在阶段内部使用的逻辑,用于计算值(如 , , 等)。 基本语法: --- 2. 常用阶段 (Common Stages) 以下是最常用的几个阶段,以及它们对应的 SQL 概念: | 阶段 (Stage) | 描述 | SQL 类比 | | :--- | :--- | :--- | | | 过滤文档,只输出符合条件的文档。 | | | | 将文档分组,可用于统计(求和、平均值等)。 | | | | 修改文档结构(选择字段、重命名字段、增加新字段)。 | | | | 对文...