Aangezien er geen manier is om te zien welk stuurprogramma je gebruikt, is hier een shell-oplossing:
db.foo.find({
"Asset.Metadata.Platforms.Platform": {
$elemMatch: {
"@name": VAR_PLATFORM,
"PublishingRanges.PublishingRange": {
$elemMatch: {
"@startdate": {$gt: VAR_START},
"@enddate": {$lt: VAR_END}
}
}
}
}
})
Trouwens, je zou de documentstructuur kunnen vereenvoudigen door Platform
weg te laten en PublishingRange
en het toewijzen van arrays aan Platforms
een PublishingRanges
respectievelijk.