時間:2024-02-14 10:19作者:下載吧人氣:27
一. 聚合框架
聚合框架是MongoDB的高級查詢語言,它允許我們通過轉換和合并多個文檔中的數據來生成新的單個文檔中不存在的信息。
聚合管道操作主要包含下面幾個部分:
命令 | 功能描述 |
$project | 指定輸出文檔里的字段. |
$match | 選擇要處理的文檔,與fine()類似。 |
$limit | 限制傳遞給下一步的文檔數量。 |
$skip | 跳過一定數量的文檔。 |
$unwind | 擴展數組,為每個數組入口生成一個輸出文檔。 |
$group | 根據key來分組文檔。 |
$sort | 排序文檔。 |
$geoNear | 選擇某個地理位置附近的的文檔。 |
$out | 把管道的結果寫入某個集合。 |
$redact | 控制特定數據的訪問。 |
$lookup |
多表關聯(3.2版本新增) |
在本篇幅中,我們聚焦$lookup的使用。
二. $lookup的功能及語法
1. 主要功能 是將每個輸入待處理的文檔,經過$lookup 階段的處理,輸出的新文檔中會包含一個新生成的數組列(戶名可根據需要命名新key的名字 )。數組列存放的數據 是 來自 被Join 集合的適配文檔,如果沒有,集合為空(即 為[ ])
2. 基本語法
{ $lookup: { from: <collection to join>, localField: <field from the input documents>, foreignField: <field from the documents of the "from" collection>, as: <output array field> } }
網友評論