Open In App

MongoDB NOR operator ( $nor )

Improve
Improve
Like Article
Like
Save
Share
Report

MongoDB provides different types of logical query operators and $nor operator is one of them. This operator is used to perform logical NOR operation on the array of one or more expressions and select or retrieve only those documents that do not match all the given expression in the array. You can use this operator in methods like find(), update(), etc. according to your requirements.

Syntax:

{ $nor: [ { Expression1 }, { Expression2 }, ...  { ExpressionN } ] }

In the following examples, we are working with:

Database: GeeksforGeeks
Collection: contributor
Document: three documents that contain the details of the contributors in the form of field-value pairs.

Matching values using $nor operator:

In this example, we are retrieving only those employee’s documents whose salary is not 3000 and whose branch is not ECE.




db.contributor.find({$nor: [{salary: 3000}, {branch: "ECE"}]}).pretty()


Matching values in nested/embedded documents using $nor operator:

In this example, we are retrieving only those employee’s documents whose age is not 24 and whose state is not AP.




db.contributor.find({$nor: [{"personal.age": 24},
                            {"personal.state": "AP"}]}).pretty()


Matching values in an array using $nor operator:

In this example, we are retrieving only those employee’s documents that does not match the given array.




db.contributor.find({$nor: [{language: {$in: ["Java", "C++"]}}]}).pretty()




Last Updated : 22 Apr, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads