#1 India's Top IT Training Institute

×

About Uncodemy

Know more about who we are and what we stand for.

About Us

About Us

Discover our mission to equip individuals with essential IT skills and industry expertise.

Read More →
UnCodeMy Gallery

UnCodeMy Gallery

Explore highlights from our IT training sessions and success stories.

Read More →
×

Free Resources

Learn, practice and plan your career — bilkul free.

Tutorials

Tutorials

Step-by-step written tutorials to learn any technology at your own pace.

Read More →
Free Counselling

Free Counselling

Book a free video counselling session and pick the right course for you.

Read More →
Online Compiler

Online Compiler

Write, run and test your code online — no setup required.

Read More →
Comparison, Logical, Element, and Array Operators for filtering data

Query Operators

Filtering data precisely is essential to working with MongoDB. Query operators let you go far beyond simple equality matches — comparing values, combining conditions, checking field existence, and querying inside arrays.

1. Comparison Operators

OperatorMeaningExample
$eqEqual to{ age: { $eq: 25 } }
$neNot equal to{ status: { $ne: "inactive" } }
$gt / $gteGreater than / or equal{ price: { $gt: 500 } }
$lt / $lteLess than / or equal{ stock: { $lte: 10 } }
$inMatches any value in array{ city: { $in: ["Delhi", "Mumbai"] } }
$ninMatches none of the values{ city: { $nin: ["Pune"] } }

2. Logical Operators

// AND (implicit)
db.products.find({ category: "Electronics", price: { $lt: 5000 } })

// Explicit $and
db.products.find({
  $and: [ { price: { $gt: 100 } }, { price: { $lt: 1000 } } ]
})

// $or
db.products.find({
  $or: [ { category: "Books" }, { category: "Stationery" } ]
})

// $nor
db.products.find({
  $nor: [ { inStock: false }, { discontinued: true } ]
})

3. Element Operators

// Field must exist
db.users.find({ phone: { $exists: true } })

// Field type check
db.users.find({ age: { $type: "int" } })

4. Array Operators

OperatorPurposeExample
$allArray contains all specified values{ tags: { $all: ["node", "react"] } }
$sizeArray has exact length{ tags: { $size: 3 } }
$elemMatchAt least one array element matches all conditions{ scores: { $elemMatch: { $gt: 80, $lt: 95 } } }
db.orders.find({
  items: { $elemMatch: { product: "Laptop", quantity: { $gte: 2 } } }
})
Pro Tip: Without $elemMatch, MongoDB matches if any combination of array elements satisfies the conditions separately — not necessarily the same element. Use $elemMatch when conditions must apply to a single array item.

5. Combining Operators

db.products.find({
  $and: [
    { category: { $in: ["Electronics", "Computers"] } },
    { price: { $gte: 1000, $lte: 50000 } },
    { $or: [ { brand: "Dell" }, { brand: "HP" } ] }
  ]
})

6. Query Operators Checklist

  • ✅ Master comparison operators — $gt, $lt, $in, $ne
  • ✅ Combine conditions with $and, $or, $nor
  • ✅ Check field existence and type with $exists, $type
  • ✅ Query arrays precisely with $elemMatch and $all
Key Takeaway: Query operators are how you turn raw filtering into precise, expressive logic. Combine them thoughtfully, and always test against edge cases like empty arrays and missing fields.

Ready to master MongoDB?

Build real-world MongoDB-powered applications with hands-on projects, mentor-led sessions, and placement support.

Explore Course