为了账号安全,请及时绑定邮箱和手机立即绑定

建立弹性搜索聚合器之间的关系 - 嵌套分组

建立弹性搜索聚合器之间的关系 - 嵌套分组

蝴蝶刀刀 2021-11-16 14:37:03
我需要在字段之间创建嵌套分组。让我们考虑下面给出的例子,文件: {     "keyword": "abc",     "country": "IN",     "state": "TN",     "city": "Chennai"   },   {     "keyword": "abc",     "country": "IN",     "state": "TN",     "city": "Trichy"   },   {     "keyword": "abc",     "country": "IN",     "state": "KL",     "city": "TVM"   },   {     "keyword": "abc",     "country": "US",     "state": "Cal",     "city": "California"   }所需的输出(类似这样):   {     "country": "IN",     "TN": [       "Chennai",       "Trichy"     ],     "KL": [       "TVM"     ]   },   {     "country": "US",     "Cal": [       "California"     ]   }使用的查询: {     "from": 0,     "size": 1,     "aggs": {         "country": {             "terms": {                 "field": "country.keyword",                 "size": 50000             }         },         "state": {             "terms": {                 "field": "state.keyword",                 "size": 50000             }         },         "city": {             "terms": {                 "field": "city.keyword",                 "size": 50000             }         }     },     "query": {         "query_string": {             "query": "(keyword:abc) "         }     } }对于这个查询,我得到了单独的存储桶作为 city 、 state 和 country 的输出。但我需要的是城市应归入州,州应归入国家。提前致谢。
查看完整描述

1 回答

?
达令说

TA贡献1821条经验 获得超6个赞

以下带有聚合的查询应该适合您


{

  "query": {

    "query_string": {

      "query": "(keyword:abc)"

    }

  }, 

  "size": 0, 

  "aggs": {

    "country_agg": {

      "terms": {

        "field": "country.keyword",

        "size": 10

      },

      "aggs": {

        "state_agg": {

          "terms": {

            "field": "state.keyword",

            "size": 10

          },

          "aggs": {

            "city_agg": {

              "terms": {

                "field": "city.keyword",

                "size": 10

              }

            }

          }

        }

      }

    }

  }

}


查看完整回答
反对 回复 2021-11-16
  • 1 回答
  • 0 关注
  • 151 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信