NOT (A AND C)
を探しています 、これはNOT A OR NOT C
と同等です :
db.collection.find({
"$or": [
{"institution_type": {"$ne": "A"}},
{"type": {"$ne": "C"}}
]
})
MongoDBには、 $nor もあります。 「1つ以上のクエリ式の配列に対して論理NOR演算を実行し、配列内のすべてのクエリ式に失敗するドキュメントを選択する」論理演算子。したがって、同等のクエリは次のようになります。
db.collection.find({
"$nor": [
{"institution_type": "A"},
{"type": "C"}
]
})
受け入れられた回答では、$where
を使用することを推奨しています オペレーターですが、ここでは不要であり、パフォーマンスに負担がかかります。