我的ElasticSearch具有以下结构:

{
    _index: 3_exposureindex
    _type: exposuresearch
    _id: 12738
    _version: 4
    _score: 1
    _source: {
        Name: test2_update
        Description:
        CreateUserId: 8
        SourceId: null
        Id: 12738
        ExposureId: 12738
        CreateDate: 2014-06-20T16:18:50.500
        UpdateDate: 2014-06-20T16:19:57.547
        UpdateUserId: 8
    }
    fields: {
        _parent: 1
    }
}

当我运行查询时,我试图同时获取_sourcefields中的数据:
{
  "query": {
    "terms": {
      "Id": [
        "12738"
      ]
    }
  }
}

我得到的只是_source中包含的值,但是,如果我运行查询:
{
  "fields": [
    "_parent"
  ],
  "query": {
    "terms": {
      "Id": [
        "12738"
      ]
    }
  }
}

然后,我只有fields。有办法同时获得两者吗?我将不胜感激。

最佳答案

您应该能够在“字段”中指定“_source”
示例:

{
  "fields": [
    "_parent",
    "_source"
  ],
  "query": {
    "terms": {
      "Id": [
        "12738"
      ]
    }
  }
}

10-04 12:06