0
在第二週的章下數組運算相與,這裏的boxOffice
陣列:
boxOffice: [{
"country": "USA",
"revenue": 41.3
}, {
"country": "Australia",
"revenue": 2.9
}, {
"country": "UK",
"revenue": 10.1
}, {
"country": "Germany",
"revenue": 4.3
}, {
"country": "France",
"revenue": 3.5
}]
下面是該查詢爲獲得收入大於15爲英國
db.movieDetails.find({
boxOffice: {
$elemMatch: {
country: "UK",
revenue: {
$gt: 15
}
}
}
})
這裏的困惑是,查詢過濾器在默認情況下並在MongoDB的發現查詢版,它應該返回文檔履行雙方country: "UK"
和revenue: { $gt: 15 }
用下面的查詢的要求:
db.movieDetails.find({
boxOffice: {
country: "UK",
revenue: {
$gt: 15
}
}
})
一位專家說:這是錯誤的方式。
什麼是
$elemMatch
的好處,當查找過濾器和默認編?