MongoDB 的聚合查询其实挺强大的,尤其在你想对数据做点统计的时候,能帮上不少忙。头歌 6.4 的聚合函数小节就讲得蛮清楚,从$group$match$sum这些常用操作符,到管道操作的用法都带了一遍。

MongoDB 的聚合管道有点像你在 SQL 里连着写几个GROUP BY + HAVING的感觉,只是语法更灵活,代码结构也更清晰些。比如你要统计每种商品的销售总额,用$group一搞定,顺手还能接个$sort

如果你对 SQL 比较熟,建议也看看这个SQL 聚合函数的对比文章,对照着理解会更快。还有这个关于MongoDB 聚合语法解析的内容也挺不错,思路清晰。

嗯,还有个小坑你得注意一下:MongoDB 在null值时聚合结果不太直观,记得参考这篇讲空值的文章,能省不少麻烦。

如果你是从MySQL或者Oracle转过来的,可以顺带看看这些资源:

,MongoDB 的聚合写起来也不难,关键是理清结构,多练练,嗯,手熟了之后效率还真挺高。

如果你最近正好在搞数据统计,或者后端返回的东西要自己聚合下,建议你打开头歌 6.4 练练手,顺便把几个相关链接收藏一下,查起来也方便。