我使用$纂操作:
{ $redact: {
$cond: {
"if": {
"$lt": [ "$number1", "$number2" ],
},
"then": "$$KEEP",
"else": "$$PRUNE"
}
}}
我想$and: [{$lt:["$number1, $number2"]}, {$exists:[$number3, 1]}]
,但我不能得到$存在,或者檢查空。
我使用$纂操作:
{ $redact: {
$cond: {
"if": {
"$lt": [ "$number1", "$number2" ],
},
"then": "$$KEEP",
"else": "$$PRUNE"
}
}}
我想$and: [{$lt:["$number1, $number2"]}, {$exists:[$number3, 1]}]
,但我不能得到$存在,或者檢查空。
你想$ifNull
,因爲它是一個「之類的」同等學歷,返回的替代值的附加功能,其中場不存在:
{ "$redact": {
"$cond": {
"if": {
"$and": [
{ "$lt": [ "$number1", "$number2" ] },
{ "$ifNull": [ "$number3", false ] }
]
},
"then": "$$KEEP",
"else": "$$PRUNE"
}
}}
那麼,該領域存在的價值該字段被返回,並且這基本上與說true
(除非它的值實際上是false
,在這種情況下,換行爲$cond
)基本相同,或者返回已經作爲false
提供的替換。
只需使用'$ match' – Rohmer