首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用弹性搜索进行聚合时获取描述

使用弹性搜索进行聚合时获取描述
EN

Stack Overflow用户
提问于 2017-03-06 10:41:44
回答 1查看 26关注 0票数 0

当我们使用弹性上的聚集特性时,我们得到了我们聚集回来的字段的值,但我们也希望得到该字段的描述。我们必须使用sector.id,就像api的其他部分稍后使用它一样。例如:我们的数据如下:

代码语言:javascript
复制
[{
   "id":"123"
   "sectors":[{
     "id":"sector-1",
     "name":"Automotive" 
   }]
},
{
   "id":"123"
   "sectors":[{
     "id":"sector-2",
     "name":"Biology" 
   }]
}]

当我们通过sectors.id进行聚合时,我们的响应如下:

代码语言:javascript
复制
"aggregations": {
    "sector": {
      "doc_count_error_upper_bound": 0,
      "sum_other_doc_count": 0,
      "buckets": [
        {
          "key": "sector-2",
          "doc_count": 19672
        },
        {
          "key": "sector-1",
          "doc_count": 11699
        }]
      }
  }

是否有任何方法可以获得sectors.name以及结果中的关键?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-06 11:22:38

似乎sectors应该是一个嵌套字段。现在假设扇区名称是唯一的,每个扇区-id。

您可以使用小结来计算出相关的键。

代码语言:javascript
复制
GET _search
{
  "size": 0,
  "aggs": {
    "sectors": {
      "nested": {
        "path": "sectors"
      },
      "aggs": {
        "sector_id": {
          "terms": {
            "field": "sectors.id"
          },
          "aggs": {
            "sector_name": {
              "terms": {
                "field": "sectors.name"
              }
            }
          }
        }
      }
    }
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42623474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档