如何在 mongo db 中向 if @cond 添加多个术语?
How to add multiple terms to an if @cond in mongo db?
我可能会问一个简单的问题,但我无法在互联网上找到任何解决方案。
我有以下 mongo 数据库查询。
我希望根据一定的逻辑设置字段“iocScore”。
如果字段“$score”等于 0,则将字段“iocScore”设置为 1,否则将字段“iocScore”设置为“$score”的值乘以 10。
我可以通过下面的查询做到这一点
"iocScore" : {
"$cond" : {
"if" : {
"$eq" : ["$score", 0]
},
"then" : 1,
"else" : {
"$multiply" : ["$score", 10]
}
}
}
但现在我想扩展 if 的项并询问“$score”字段是否等于 0 或 0.0 或 null 然后将“iocScore”设置为 1。
我试过这样:
"iocScore" : {
"$cond" : {
"if" : {
"$score" : {
"$in" : [0, 0.0, null]
}
}
},
"then" : 1,
"else" : {
"$multiply" : ["$score", 10]
}
}
但我一直收到语法错误。
有什么想法吗?
[]
定义了一个数组。数组中的元素应该是相同类型。
用 $or 运算符连接三个 eq 表达式。
我可能会问一个简单的问题,但我无法在互联网上找到任何解决方案。 我有以下 mongo 数据库查询。 我希望根据一定的逻辑设置字段“iocScore”。 如果字段“$score”等于 0,则将字段“iocScore”设置为 1,否则将字段“iocScore”设置为“$score”的值乘以 10。 我可以通过下面的查询做到这一点
"iocScore" : {
"$cond" : {
"if" : {
"$eq" : ["$score", 0]
},
"then" : 1,
"else" : {
"$multiply" : ["$score", 10]
}
}
}
但现在我想扩展 if 的项并询问“$score”字段是否等于 0 或 0.0 或 null 然后将“iocScore”设置为 1。 我试过这样:
"iocScore" : {
"$cond" : {
"if" : {
"$score" : {
"$in" : [0, 0.0, null]
}
}
},
"then" : 1,
"else" : {
"$multiply" : ["$score", 10]
}
}
但我一直收到语法错误。 有什么想法吗?
[]
定义了一个数组。数组中的元素应该是相同类型。
用 $or 运算符连接三个 eq 表达式。