$eq (aggregation)
Definition
$eq
Compares two values and returns:
true
when the values are equivalent.false
when the values are not equivalent.The$eq
compares both value and type, using thespecified BSON comparison orderfor values of different types.
$eq
has the following syntax:
- { $eq: [ <expression1>, <expression2> ] }
The arguments can be any valid expression. For more information on expressions, seeExpressions.
Example
Consider an inventory
collection with the following documents:
- { "_id" : 1, "item" : "abc1", description: "product 1", qty: 300 }
- { "_id" : 2, "item" : "abc2", description: "product 2", qty: 200 }
- { "_id" : 3, "item" : "xyz1", description: "product 3", qty: 250 }
- { "_id" : 4, "item" : "VWZ1", description: "product 4", qty: 300 }
- { "_id" : 5, "item" : "VWZ2", description: "product 5", qty: 180 }
The following operation uses the $eq
operator todetermine if qty
equals 250
:
- db.inventory.aggregate(
- [
- {
- $project:
- {
- item: 1,
- qty: 1,
- qtyEq250: { $eq: [ "$qty", 250 ] },
- _id: 0
- }
- }
- ]
- )
The operation returns the following results:
- { "item" : "abc1", "qty" : 300, "qtyEq250" : false }
- { "item" : "abc2", "qty" : 200, "qtyEq250" : false }
- { "item" : "xyz1", "qty" : 250, "qtyEq250" : true }
- { "item" : "VWZ1", "qty" : 300, "qtyEq250" : false }
- { "item" : "VWZ2", "qty" : 180, "qtyEq250" : false }