Du letar efter NOT (A AND C)
, vilket motsvarar NOT A OR NOT C
:
db.collection.find({
"$or": [
{"institution_type": {"$ne": "A"}},
{"type": {"$ne": "C"}}
]
})
MongoDB har också en $nor logisk operator som "utför en logisk NOR-operation på en array med ett eller flera frågeuttryck och väljer de dokument som misslyckas med alla frågeuttryck i arrayen", så en motsvarande fråga skulle vara:
db.collection.find({
"$nor": [
{"institution_type": "A"},
{"type": "C"}
]
})
Det godkända svaret rekommenderar att du använder en $where
operatör, men det är onödigt här och beskattar prestanda.