文章目录
本文是存储了5个手机数据后再操作的。存储实现见文章:【Node.js】mongoose教程—存储。
GitHub源码链接:sodino#MongoDemo
聚合操作(Aggregation Operation)
官方文档链接:
Aggregation
Aggregation Pipeline Quick Reference
Aggregation Pipeline Operator
Aggregation Commands Comparison
官方是这么描述聚合操作
的:
|
|
Sodino勉强翻译一下吧:聚合操作能够处理数据记录并返回处理后的计算结果。聚合操作能够将多个文档记录的值重新划分组别,并在重新分组的数据上执行丰富的计算操作然后返回单一的计算结果。
翻译成大白话就是:聚合操作能够在MongoDB层面进行数据加工、数据挖掘,产生新的有价值的数据记录。
举个例子:
之前的文章mongoose教程07—排重与计数就是聚合操作在实际应用中的例子。
从存储的数据文档中重新计算出了厂商国家数量及符合条件的手机型号数量,这些信息是间接通过已存储的字段加工后挖掘出来的。
MongoDB提供了聚合操作的三种方式:
Aggregation Pipeline
Map-Reduce
Single Purpose Aggregation Operations