Anda dapat menggunakan $redact sebagai ganti $match dalam kasus ini, seperti ini
db.collectionName.aggregate({
$redact:{
$cond:{
if:{$and:[{$not:"$dealerName"},{$not:"$title"},{$eq:["$listed",false]},
then: "$$PRUNE",
else: "$$DESCEND"
}
}
})
Kita membutuhkan syarat pertama untuk melewati dokumen tingkat atas, syarat kedua untuk melewati tingkat kedua dan syarat ketiga untuk memangkas kendaraan. Tidak perlu $unwind dalam hal ini!
Satu hal lagi:$redact hanya tersedia di 2.6