$ne (Not Equal)

Last updated: 2026-10-09

$ne (Not Equal)

$ne is the expression-form inequality comparison. It takes two arguments and returns true when they differ. It is used to exclude specific values or find differing records, such as orders whose status is not closed. The expression syntax { $ne: [expr1, expr2] } differs from the query operator. Note that null compared with null returns false (equal), and in expressions a missing field participates as null — distinct from query behavior where $ne also matches documents missing the field.

CategorySet, Condition & Conversion
MongoDB Version1.0+
Example Languagemongosh (Shell)

📝 Syntax

{ $ne: [ <expression1>, <expression2> ] }

⚙️ Parameters

expression 1The first expression to compare.
expression 2The second expression to compare.

Returns:true when the values differ, false when equal

▶ Example

Run the commands below in your local mongosh (requires a running mongod):

// $ne: find orders whose status is not closed
db.orders.aggregate([
  { $project: {
      active: { $ne: ['$status', 'closed'] }
  } }
])

Output:

{ '_id': 1, 'active': true }
{ '_id': 2, 'active': false }

📌 Notes

More hands-on cases coming soon.

📚 Related Tutorials

❓ FAQ

QHow are $ne and $eq related?
AThey are inverses; $ne is the negation of $eq.
QWhat does $ne return for null?
Anull equals null (false); null differs from other values (true).
QCan $ne filter out missing fields?
AIn expressions a missing field counts as null, so it returns true against a non-null value.
Web-Tutorial.com

Web-Tutorial Tech Team

A team of developers maintaining programming tutorials. Each tutorial is written and reviewed by developers with expertise in that field. We work to keep our content accurate and reliable — if you spot an issue, please let us know.

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏