Je zou in dit geval $redact kunnen gebruiken in plaats van $match, zoals dit
db.collectionName.aggregate({
$redact:{
$cond:{
if:{$and:[{$not:"$dealerName"},{$not:"$title"},{$eq:["$listed",false]},
then: "$$PRUNE",
else: "$$DESCEND"
}
}
})
We hebben de eerste voorwaarde nodig om documenten op het hoogste niveau over te slaan, de tweede voorwaarde om het tweede niveau over te slaan en de derde om voertuigen te snoeien. Geen $unwind nodig in dit geval!
Nog een ding:$redact alleen beschikbaar in 2.6