0
{
  "deviceId": "A",
  "users": [
    {
      "id": 1,
      "status": "ac",
      "DELETE": true
    },
    {
      "id": 2,
      "status": "ac"
    },
    {
      "id": 3,
      "status": "ac"
    },
    {
      "id": 4,
      "status": "ac"
    },
    {
      "id": 5,
      "status": "deac"
    },
    {
      "id": 6,
      "status": "ac"
    }
  ]
}

我有一个像 top 这样的文档,我想通过状态值或 DELETE 字段存在状态来搜索用户。但我的代码不起作用。

4

1 回答 1

0

使用$elemMatch

db.test.findOne({
  "deviceId": "A",
  "users": {
    "$elemMatch": {
      "id": 1,
      "$or": [
        {
          "DELETE": {
            $exists: true
          }
        },
        {
          "status": "deac"
        }
      ]
    }
  }
})
于 2020-03-31T17:56:37.893 回答