Търсите NOT (A AND C)
, което е еквивалентно на NOT A OR NOT C
:
db.collection.find({
"$or": [
{"institution_type": {"$ne": "A"}},
{"type": {"$ne": "C"}}
]
})
MongoDB също има $nor логически оператор, който "извършва логическа NOR операция върху масив от един или повече изрази на заявка и избира документите, които не отговарят на всички изрази на заявка в масива", така че еквивалентна заявка би била:
db.collection.find({
"$nor": [
{"institution_type": "A"},
{"type": "C"}
]
})
Приетият отговор препоръчва използването на $where
оператор, но това е ненужно тук и облага с данъци ефективността.