$lt (Less Than)
Last updated: 2026-10-09
$lt (Less Than)
$lt is the expression-form less-than comparison. It takes two arguments and returns true when the first is smaller than the second. It is used for numeric and date ordering, such as flagging products whose stock falls below a warning level. The expression syntax { $lt: [expr1, expr2] } differs from the query syntax { field: { $lt: value } }. Comparisons follow BSON type ordering. Combine with $and or $or to build range conditions.
| Category | Set, Condition & Conversion |
|---|---|
| MongoDB Version | 1.0+ |
| Example Language | mongosh (Shell) |
📝 Syntax
{ $lt: [ <expression1>, <expression2> ] }
⚙️ Parameters
| expression 1 | The first expression to compare. |
|---|---|
| expression 2 | The second expression to compare. |
Returns:true when the first is less than the second, false otherwise
▶ Example
Run the commands below in your local mongosh (requires a running mongod):
// $lt: flag stock below the warning level
db.products.aggregate([
{ $project: {
lowStock: { $lt: ['$stock', 10] }
} }
])
Output:
{ '_id': 1, 'lowStock': true }
{ '_id': 2, 'lowStock': false }
📌 Notes
- Strictly less; equality returns false
- Dates and strings compare by BSON type order
- Combine with $and or $or to build ranges
🏷️ Related Tags
💡 Related Cases
More hands-on cases coming soon.
📚 Related Tutorials
❓ FAQ
QWhat is the difference between $lt and $lte?
A$lt is strictly less; $lte also accepts equality.
QCan $lt compare dates?
AYes, dates compare directly by time.
QHow do I build a range condition?
AWrap $gte and $lt together with $and, e.g. price between 10 and 20.