文章目录
$eq
聚合运算符用于比较两个值并返回是否相等,如果相等返回true
,否则返回false
语法
js
{ $eq: [ <expression1>, <expression2> ] }
$eq
可以用来比较任何类型的值,针对不同的类型使用特定的BSON比较顺序。
举例
inventory
集合有下列文档:
json
{ "_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 }
下面的聚合操作使用$eq
运算符来判断qty
是否等于250
:
js
db.inventory.aggregate(
[
{
$project:
{
item: 1,
qty: 1,
qtyEq250: { $eq: [ "$qty", 250 ] },
_id: 0
}
}
]
)
操作返回下面的结果:
json
{ "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 }