xx *_* yy 4 mongodb mongodb-query aggregation-framework
我想通过连接一些字段来构建一个字符串,但我想在决定连接它之前检查每个字段的值。
//syntax:
{$projection:{fieldName:{$concat:["$field1","-","$field2","$field3"]}}}
Run Code Online (Sandbox Code Playgroud)
我想要的是?
fieldName=($field1!=null?"$field1-":"")+"$field2"+($field3=="ok"?"approved":"pending")
Run Code Online (Sandbox Code Playgroud)
对于第一种情况(空),您将使用$ifNull运算符。如果该字段为空或缺失,这将返回默认值。
对于第二种情况,使用$cond运算符。
fieldName:{
$concat:
[
{$ifNull:["$field1", ""]},
"-",
"$field2",
{$cond:[{$eq:['$field3', 'ok']}, "approved", "pending"] }
]
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3378 次 |
| 最近记录: |