Mongo查询以查找具有对象数组的字段

时间:2019-06-17 04:58:44

标签: mongodb mongodb-query

我有一个名为test_collection的集合,其中包含类型对象的数组。

{
  "_id": {
    "oid": "5ad86741af82eb3204c52979"
  },
  "id": 100,
  "names": [
    {
      "_id": {
        "oid": "5ad86741af82eb3204c5297b"
      },
      "_type": "Name",
      "date": {
        "date": "2018-04-19T00:00:00.000Z"
      }
    }
  ],
  "addresses": [
    {
      "_id": {
        "oid": "5ad86741af82eb3204c52989"
      },
      "_type": "Address"
    }
  ],
  "details": [
    {
      "_id": {
        "oid": "5ad86742af82eb3204c529d3"
      },
      "_type": "Detail",
      "date": {
        "date": "2018-04-19T00:00:00.000Z"
      }
    }
  ],
  "info": [
    {
      "_id": {
        "oid": "5ad86742af82eb3204c529d3"
      },
      "_type": "info",
      "date": {
        "date": "2018-04-19T00:00:00.000Z"
      }
    }
  ],
  "test": [
    {
      "_id": {
        "oid": "5ad86742af82eb3204c529d3"
      },
      "_type": "test",
      "date": {
        "date": "2018-04-19T00:00:00.000Z"
      }
    }
  ]
}

我将如何编写查询来从记录中提取唯一的特定数组字段。

就像我只想从此记录中提取测试和信息数组一样。

我在下面尝试过

db.test_collection.find({info :{$exists: true },test:{$exists: true}})

它给出了包含这两个字段的所有记录。

0 个答案:

没有答案