本文主要是介绍MongoDB聚合运算符:$cmp,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 语法
- 用法
- 举例
$cmp
聚合运算符返回连个值的比较结果。
语法
{ $cmp: [ <expression1>, <expression2> ] }
表达式可以是任何类型,使用标准的BSON比较顺序对不同类型的值进行比较。
用法
$cmp
对两个值进行比较,返回:
-1
,第一个值小于第二个值1
,第一个值大于第二个值0
,两个值相等
举例
在inventory
集合中有下面的文档:
{ "_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 }
下面的聚合管道使用$cmp
运算符比较qty
字段与常量250
:
db.inventory.aggregate([{$project:{item: 1,qty: 1,cmpTo250: { $cmp: [ "$qty", 250 ] },_id: 0}}]
)
操作返回下面的结果:
{ "item" : "abc1", "qty" : 300, "cmpTo250" : 1 }
{ "item" : "abc2", "qty" : 200, "cmpTo250" : -1 }
{ "item" : "xyz1", "qty" : 250, "cmpTo250" : 0 }
{ "item" : "VWZ1", "qty" : 300, "cmpTo250" : 1 }
{ "item" : "VWZ2", "qty" : 180, "cmpTo250" : -1 }
这篇关于MongoDB聚合运算符:$cmp的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!