$cond (aggregation)
在本页面
定义
$cond
计算一个布尔表达式以返回两个指定的返回表达式之一。
该$cond表达式具有以下两种语法之一:
{ $cond: { if: <boolean-expression>, then: <true-case>, else: <false-case> } }or
{ $cond: [ <boolean-expression>, <true-case>, <false-case> ] }$cond要求任何(if-then-else)一种语法的所有三个参数。
如果将<boolean-expression>计算结果为true,则 $cond计算并返回<true-case>表达式的值 。否则,$cond求值并返回<false-case>表达式的值。
参数可以是任何有效的表达式。有关表达式的更多信息,请参见 表达式。
也可以看看
$switch
例子
以下示例将inventory集合与以下文档一起使用:
下面的聚合操作使用$cond表达式,如果qty值大于或等于250,将折扣值设置为30,如果qty值小于250,则设置为20:
该操作返回以下结果:
以下操作使用$cond表达式的数组语法, 并返回相同的结果:
译者:李冠飞
校对:
最后更新于