在MongoDB中,我想根據滿足特定參數的子文檔的值找到文檔。具體來說,我有一個文件的結構是這樣的:MongoDB:在數組匹配參數中查找子文檔
{
name: "test",
data: [{
name: "test1",
start: 0,
end: 2
},
{
name: "test2",
start: 15
end: 18
}]
}
我怎麼能告訴MongoDB中只返回我的文檔,如果開始時間爲數據子文檔小於5和結束時間相同的子文檔大於5 ?目前,如果我做
db.foo.findOne({
'data.start': { $lte: 5 },
'data.end': { $gte: 5 }
})
它總是會回到我的文檔,因爲5大於0和小於18我怎麼能告訴MongoDB中只返回我的文檔,如果5(或任何值)大於0並且小於2或大於15且小於18?
真棒這正是我需要的,謝謝! – 2012-08-06 06:31:11