MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

mongodb wie frage ich mit dem nand-operator ab?

Der $not-Operator invertiert einen komplexen Ausdruck nicht. Sie müssen $and oder $or für komplexe Ausdrücke verwenden.

Unter Verwendung von Logikregeln wissen wir, dass die folgenden identisch sind:

    not ( A and B ) = not A or not B

Mit der MongoDB-Abfragesprache hätten Sie:

db.collection.find({$or:[{"a":{"$ne":false}},{"b":{"$ne":"condition"}}]})

OR simplifying the double boolean:

db.collection.find({$or:[{"a":true},{"b":{"$ne":"condition"}}]})

Mit dem MongoDB-Aggregationsframework hätten Sie:

db.collection.aggregate([{"$match":{$or:[{"a":{"$ne":false}},{"b":{"$ne":"condition"}}]}}])

OR again, simplified to:

db.collection.aggregate([{"$match":{$or:[{"a":true},{"b":{"$ne":"condition"}}]}}])