Sie könnten in diesem Fall $redact anstelle von $match verwenden, so
db.collectionName.aggregate({
$redact:{
$cond:{
if:{$and:[{$not:"$dealerName"},{$not:"$title"},{$eq:["$listed",false]},
then: "$$PRUNE",
else: "$$DESCEND"
}
}
})
Wir brauchen die erste Bedingung, um Dokumente der obersten Ebene zu überspringen, die zweite Bedingung, um die zweite Ebene zu überspringen, und die dritte, um Fahrzeuge zu beschneiden. Keine Entspannung nötig in diesem Fall!
Noch etwas:$redact nur in 2.6 verfügbar