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