這是我第一次使用堆疊溢位,因為我遇到了問題,我找不到解決方案,我剛從資料庫開始,我就遇到了這個問題。
檔案說它應該可以作業,但是當我嘗試僅使用名稱 post1 獲取帖子時,會回傳兩個帖子。我可能很愚蠢,但有人可以解釋為什么這沒有做它應該做的嗎?
只想使用posts.name:post1獲取post1而不是post2,但給了我兩個帖子
uj5u.com熱心網友回復:
這就是 Mongo 的作業方式,“查詢”欄位與檔案匹配,陣列欄位是該檔案的一部分,因此它被完整回傳。
您要做的是在查詢中使用$投影運算子:
位置 $ 運算子限制 an 的內容以回傳與陣列上的查詢條件匹配的第一個元素。
像這樣:
db.collection.find({
"posts.name": "post1"
},
{
"posts.name.$": 1
})
蒙戈游樂場
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/520164.html
標籤:mongodb