Как выполнить поиск с помощью elemMatch по массиву SubDocument? У меня есть документ ReportCollection с такими элементами, как: -
/* 0 */
{
"_id" : ObjectId("5507bfc435e9470c9aaaa2ac"),
"owner" : ObjectId("5507bfc31e14d78e177ceebd"),
"reports" : {
"xReport" : [
{
"name" : "xReport",
"parameters" : {
"x" : {
"dateTime" : "2015-03-11T18:30:00.000Z",
"unit" : 1,
"value" : 102
}
},
"createdBy" : ObjectId("5507bfc31e14d78e177ceebd"),
"modifiedBy" : ObjectId("5507bfc31e14d78e177ceebd"),
"_id" : ObjectId("5507bfc41e14d78e177ceebf")
}
]
}
}
Я получил reports.xReport [] ._ id в качестве параметра поиска.
Моя следующая попытка не удалась: -
db.reports.find ({ {owner: ObjectId("5507afd3d54bae3513c185cb")},
{ 'reports.xReport': {$elemMatch: {_id: ObjectId("5507afd3d54bae3513c185cd") }}} } )