我使用的是mongodb 2.4.6版本。 我有以下記錄在名爲「MyCollection的」如何從mongo數組結構化記錄中獲取多個元素匹配元素
{
"_id" : ObjectId("524d3eb224bfcc31614ec8ef"),
"symbol" : "JACK",
"option_exp" : [
{
"dateexpiration" : "2014-03-22",
"total_strikes" : 18,
"options" : [
{
"pricevalue" : "22.5",
"premium" : "100"
},
{
"pricevalue" : "60.0",
"premium" : "100"
}
]
},
{
"dateexpiration" : "2014-03-22",
"total_strikes" : 30,
"options" : [
{
"pricevalue" : "122.5",
"premium" : "34"
},
{
"pricevalue" : "60.0",
"premium" : "100"
}
]
},
{
"dateexpiration" : "2013-12-21",
"total_strikes" : 16,
"options" : [
{
"pricevalue" : "20.0",
"premium" : "100"
},
{
"pricevalue" : "22.5",
"premium" : "100"
}
]
}
]
}
我想要檢索的所有記錄belogging到特定dateexpiration日期我的收藏之一。
我試過下面的方式,但它的returing整個文件結構。
db.mycollection.find({ "symbol" : "JACK" ,"option_exp.dateexpiration" : "2014-03-22"}).pretty()
這下面是給我的錯誤SyntaxError:意外的標記。
db.mycollection.find({ "symbol" : "JACK" ,"option_exp.dateexpiration" : "2014-03-22"},{option_exp.$:1}).pretty()
您可以返回第一個匹配或文檔的所有。您無法過濾Mongodb中當前的特定數組元素。如果您將它們存儲爲實際文檔,則查詢起來很麻煩。 – WiredPrairie