[英]MongoDB Collections format
我需要將餐廳及其相應的菜單項存儲起來,所以我做了這樣的事情
{ name: 'Foo',
menu:
[ { item: 'foo',
description: '...',
price: 20 },
{ item: 'bar',
description: '...',
price: 30 } ]
}
問題是我有時需要訪問此項目,但是這樣做並不容易,我應該使用類似的方法嗎?
{ name: 'Foo',
menu:
{ "0": { item: 'foo',
description: '...',
price: 20 },
"1": { item: 'bar',
description: '...',
price: 30 } }
}
我認為找到特定商品便宜。
使用通過數字鍵可訪問的嵌入式對象很少是正確的方法。 MongoDB的操作員可以方便地訪問數組中的項目,從而提供更好的靈活性。
有關僅提取所需數組元素的方法,請參見$elemMatch
和$
projection運算符。
例如,要從第一個示例文檔中獲取'foo'
菜單項,請執行以下操作:
db.restaurants.findOne({name: 'Foo'}, {menu: {$elemMatch: {item: 'foo'}}});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.