Dal momento che non c'è modo di dire quale driver usi, ecco una soluzione shell:
db.foo.find({
"Asset.Metadata.Platforms.Platform": {
$elemMatch: {
"@name": VAR_PLATFORM,
"PublishingRanges.PublishingRange": {
$elemMatch: {
"@startdate": {$gt: VAR_START},
"@enddate": {$lt: VAR_END}
}
}
}
}
})
A proposito, potresti semplificare la struttura del documento omettendo Platform
e PublishingRange
e assegnazione di array a Platforms
un PublishingRanges
rispettivamente.