MongoDB 聚合管道查詢支持多種操作,主要包括以下幾類:
$match
:過濾文檔,只輸出符合條件的文檔。$project
:選擇、重命名、計算和創(chuàng)建新的字段。$group
:根據(jù)指定的鍵對文檔進行分組,并可進行聚合操作,如求和、計數(shù)、求平均值等。$sort
:對文檔進行排序。$limit
:限制輸出文檔的數(shù)量。$skip
:跳過指定數(shù)量的文檔。$unwind
:將數(shù)組字段拆分成多個文檔。$lookup
:在另一個集合中查找文檔,并將結(jié)果合并到當(dāng)前文檔中。$addFields
/ $set
:向文檔中添加新字段或更新現(xiàn)有字段。$replaceRoot
/ $replaceWith
:替換文檔的根級字段。$project
和 $addFields
的組合使用,可以實現(xiàn)更復(fù)雜的字段操作和計算。$bucket
:將文檔分組到不同的桶中,并對每個桶執(zhí)行聚合操作。$facet
:并行執(zhí)行多個聚合管道階段,適用于復(fù)雜的查詢場景。這些操作可以組合使用,以實現(xiàn)更復(fù)雜的數(shù)據(jù)處理和轉(zhuǎn)換。在實際應(yīng)用中,可以根據(jù)需求靈活地選擇和組合這些操作來滿足特定的數(shù)據(jù)處理需求。