首页 > 解决方案 > MongodB对象数组查询

问题描述

我想弄清楚如何搜索具有标签“작성”且值为“Y”的对象数组
我做了这样的查找查询{"attrs.label": "작성" , "attrs.value": "Y"}
但问题是 {..., attrs: [{label: "작성", value: "N"}, {label: "Another", value: "Y"}]}
该文档与我的查询匹配我需要在一个数组元素中完全匹配。

我试过了

{ $and: [{"attrs.label": /작성/}, {"attrs.value": "Y"}]}

标签: databasemongodbmongoosemongodb-query

解决方案


在这种情况下,您可以使用$elemMatch运算符来指示至少一个数组项必须满足所有要求:

db.collection.find({ attrs: { $elemMatch: { label: "작성", value: "Y" } } })

蒙戈游乐场


推荐阅读