$lookup : {
from: "categories",
localField: "_id",
foreignField: "userId",
as: "categories_details"
}
為什么我們在這里使用“$”作為查找的前綴?
uj5u.com熱心網友回復:
這是 MongoDB 的語法。它不僅用于聚合框架,還用于基本查詢語法。
使用$ 的地方:
- 運算子的名稱中帶有$前綴- 例如:
$eq,$in,$and... - 聚合框架中的階段在其名稱中具有$前綴- 例如:
$set,$group,$project... - 在聚合管道中,當你想訪問當前檔案的某個欄位的值時,你應該使用$前綴和該欄位的名稱
uj5u.com熱心網友回復:
MongoDB 中的 $ 符號通常指很多東西,取決于在哪里以及如何使用它:
"$" 是為運算子保留的:它可以與一些運算子一起使用,例如 $gte、$in、$eq 或 $lookup,這樣我們就告訴 mongo 根據以 $ 符號為前綴的運算子來處理下一個運算式。
"$field-name":如果在帶有欄位名稱的字串中使用 $ 符號,則在這種情況下 $ 指的是根檔案欄位,例如:
{ "$sum": { "$map": { "input": "$data", "as": "currentData", "in": { "$size": "$$currentData.d" } } } }
這里 '$data' 是檔案陣列欄位。
"$$variable":有時$符號可以用來參考變數,所以根據前面的代碼,"$$currentData"就是$map聚合的as運算式中取的變數。
$(更新):位置 $ 運算子標識陣列中要更新的元素,而無需明確指定該元素在陣列中的位置。您可以在此處閱讀有關此內容的更多資訊
$(投影):位置 $ 運算子限制 an 的內容以回傳與陣列上的查詢條件匹配的第一個元素。您可以在此處閱讀有關此內容的更多資訊
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/364493.html
