MongoDB-如何查找仅包含指定值的数组

问题描述 投票:1回答:1

假设我有以下文件

segments
{
  "name":"S1",
},
{
  "name":"S2",
},
{
  "name":"S3",
}

和用户

users
{
  "id":1234.
  "segments":["S1","S2","S3"]
}
{
  "id":1235.
  "segments":["S1"]
}
{
  "id":1237.
  "segments":["S2"]
}
{
  "id":1236.
  "segments":["S1","S2"]
}

如果我执行users.find({“ segments”:“ S2”}),则将所有带有字段“ S2”的文档带入其中。

我正在寻找的是数组,仅带有值S2。我正在寻找此输出:

{
  "id":1237.
  "segments":["S2"]
}

因为它只有我要的S2

arrays mongodb search
1个回答
0
投票

您可以使用$elemMatch投影

$elemMatch
© www.soinside.com 2019 - 2024. All rights reserved.