在 Mongodb 中进行字符串比较的布尔表达式?

Boolean Expression with String Comparison in Mongodb?

$cond在mongodb中的定义是这样的:

$cond: { if: { $gte: [ "$qty", 250 ] }, then: 30, else: 20 }

但是,我们可以为字符串这样做吗?我想用正则表达式比较文档中的字符串值,所以这样的东西可以工作:

$cond: { if: { $match: [/sam/, "$name"] }, then: 30, else: 20 }

/sam/ 是正则表达式,"$name" 是我要比较的字段。作为旁注,这个表达式将被放入聚合管道中。

不,这目前是不可能的,而且 feature request 已经有一段时间了。
根据您的需要,您可以使用 $substr

来完成您的工作