mongodb聚合查询:如何在$switch内引用数组内容?

mongodb聚合查询:如何在$switch内引用数组内容?

mongodb:4.2.11
数组是这样的形式:

{

name : "....",

supplier : [{"name":"谷歌",...},{"name":"微软",...}]

}

现在的问题是:

aggregate内的$project部分如下:

{"$project" : {

"_id" : false,

"name":true,

"测试哪个数据匹配":{

"$switch":

{

"branches":

[

{"case":{"$regexMatch":{"input":"$name","regex": "谷"}},"then" : "name匹配"},

{"case":{"$regexMatch":{"input":"$supplier.name", "regex":"谷"}},"then": "supplier.name匹配"},

],

"default":"None"

}

}

}

},

这个会报错,regexMatch需要一个字符串,我需要在switch内引用所有supplier.name,测试过了无论是switch还是cond都是无法用.引用。

以上是 mongodb聚合查询:如何在$switch内引用数组内容? 的全部内容, 来源链接: utcz.com/a/161581.html

回到顶部