云计算百科
云计算领域专业知识百科平台

MongoDB $elemMatch 多属性匹配退化成 OR——数组参数与 $and 组合查询

用属性模式(Attribute Pattern)存商品规格:specs 是 [{k, v}] 数组,支持按任意属性组合筛选。查询\”品牌=adidas 且 颜色=red\”,期望只命中阿迪达斯的红鞋,结果耐克的红鞋也回来了。排查后发现两件事叠在一起:$elemMatch 的语义被误解了一半,另一半问题出在查询字符串参数的解析上。

问题现象

Schema 与索引:

const AttributeSchema = new Schema({


k: {

type

赞(0)
未经允许不得转载:网硕互联帮助中心 » MongoDB $elemMatch 多属性匹配退化成 OR——数组参数与 $and 组合查询
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!