MongoDB 聚合管道查询支持多种操作,主要包括以下几类:
$match:过滤文档,只输出符合条件的文档。$project:选择、重命名、计算和创建新的字段。$group:根据指定的键对文档进行分组,并可进行聚合操作,如求和、计数、求平均值等。$sort:对文档进行排序。$limit:限制输出文档的数量。$skip:跳过指定数量的文档。$unwind:将数组字段拆分成多个文档。$lookup:在另一个集合中查找文档,并将结果合并到当前文档中。$addFields / $set:向文档中添加新字段或更新现有字段。$replaceRoot / $replaceWith:替换文档的根级字段。$project 和 $addFields 的组合使用,可以实现更复杂的字段操作和计算。$bucket:将文档分组到不同的桶中,并对每个桶执行聚合操作。$facet:并行执行多个聚合管道阶段,适用于复杂的查询场景。这些操作可以组合使用,以实现更复杂的数据处理和转换。在实际应用中,可以根据需求灵活地选择和组合这些操作来满足特定的数据处理需求。