 
  Data Structure Data Structure
 Networking Networking
 RDBMS RDBMS
 Operating System Operating System
 Java Java
 MS Excel MS Excel
 iOS iOS
 HTML HTML
 CSS CSS
 Android Android
 Python Python
 C Programming C Programming
 C++ C++
 C# C#
 MongoDB MongoDB
 MySQL MySQL
 Javascript Javascript
 PHP PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Can we use NOT and AND together in MongoDB?
Yes, we can use the NOT and AND together in MongoDB. The syntax is as follows
NOT X AND NOT Y = NOT (X AND Y) Let us see the working of above syntax. If both X and Y will be true then last result will be false. If one of the operands gives result false then last result will be true.
Following is the query to create a collection with documents
> db.NotAndDemo.insertOne({"StudentName":"John","StudentCountryName":"US"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5c98746a330fd0aa0d2fe4a8") } > db.NotAndDemo.insertOne({"StudentName":"John","StudentCountryName":"UK"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5c987478330fd0aa0d2fe4a9") } > db.NotAndDemo.insertOne({"StudentName":"David","StudentCountryName":"AUS"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5c987487330fd0aa0d2fe4aa") } > db.NotAndDemo.insertOne({"StudentName":"Chris","StudentCountryName":"UK"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5c9874ac330fd0aa0d2fe4ab") } > db.NotAndDemo.insertOne({"StudentName":"Chris","StudentCountryName":"US"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5c9874b7330fd0aa0d2fe4ac") } Following is the query to display all the documents from a collection with the help of find() method
> db.NotAndDemo.find().pretty(); This will produce the following output: {    "_id" : ObjectId("5c98746a330fd0aa0d2fe4a8"),    "StudentName" : "John",    "StudentCountryName" : "US" } {    "_id" : ObjectId("5c987478330fd0aa0d2fe4a9"),    "StudentName" : "John",    "StudentCountryName" : "UK" } {    "_id" : ObjectId("5c987487330fd0aa0d2fe4aa"),    "StudentName" : "David",    "StudentCountryName" : "AUS" } {    "_id" : ObjectId("5c9874ac330fd0aa0d2fe4ab"),    "StudentName" : "Chris",    "StudentCountryName" : "UK" } {    "_id" : ObjectId("5c9874b7330fd0aa0d2fe4ac"),    "StudentName" : "Chris",    "StudentCountryName" : "US" } Following is the query to use NOT and AND together, which is the same as NOT X OR NOT Y for NOT (X AND Y)
> db.NotAndDemo.find({ ...    "$or": [ ...       {"StudentName": {"$ne": "Chris"}}, ...       {"StudentCountryName": {"$ne": "US"}} ...    ] ... }).pretty(); This will produce the following output
{    "_id" : ObjectId("5c98746a330fd0aa0d2fe4a8"),    "StudentName" : "John",    "StudentCountryName" : "US" } {    "_id" : ObjectId("5c987478330fd0aa0d2fe4a9"),    "StudentName" : "John",    "StudentCountryName" : "UK" } {    "_id" : ObjectId("5c987487330fd0aa0d2fe4aa"),    "StudentName" : "David",    "StudentCountryName" : "AUS" } {    "_id" : ObjectId("5c9874ac330fd0aa0d2fe4ab"),    "StudentName" : "Chris",    "StudentCountryName" : "UK" }Advertisements
 