如何在 mongoDB 中进行此查询?
{
_ID: ”*******”
内容: ””,
注释: [
{
键1:“1”,
键2:“2”
},
{
键1:“sdfs”,
键2:“sdfasdf”
}
]
}
例如,我使用如下数据。我想查询条件{key1:1,key2:2}的评论中的项目,而不是返回整条记录。
我应该怎么办?
如何在 mongoDB 中进行此查询?
{
_ID: ”*******”
内容: ””,
注释: [
{
键1:“1”,
键2:“2”
},
{
键1:“sdfs”,
键2:“sdfasdf”
}
]
}
例如,我使用如下数据。我想查询条件{key1:1,key2:2}的评论中的项目,而不是返回整条记录。
我应该怎么办?
你可以试试这个
{ "comments.key1" : "1", "comments.key2" : "sdfasdf" }
只有在数组元素中必须匹配多个字段时才需要使用它。
您可以使用以下方法查询两个字段的子文档$elemMatch
:
{ comments: { $elemMatch : { key1: 1, key2: 2 } } }
您不能只返回选定的子文档。你会得到所有的。因此,您必须在客户端进行过滤。(当然,您可以排除主文档的所有其他字段)。