Sie suchen nach NOT (A AND C)
, was NOT A OR NOT C
entspricht :
db.collection.find({
"$or": [
{"institution_type": {"$ne": "A"}},
{"type": {"$ne": "C"}}
]
})
MongoDB hat auch einen $nor logischer Operator, der "eine logische NOR-Operation auf einem Array von einem oder mehreren Abfrageausdrücken durchführt und die Dokumente auswählt, die alle Abfrageausdrücke im Array nicht bestehen", also wäre eine äquivalente Abfrage:
db.collection.find({
"$nor": [
{"institution_type": "A"},
{"type": "C"}
]
})
Die akzeptierte Antwort empfiehlt die Verwendung eines $where
Betreiber, aber das ist hier unnötig und belastet die Performance.