我正在尝试使用elasticsearch-rails和elasticsearch-model gems在ElasticSearch的同一级别执行多个聚合。
在我生成的查询哈希中,我有以下内容 -
def query_hash(params, current_person = nil, manager_id = nil)
aggs = {}
aggs[:home_country_id] = {terms: {field: "home_country_id"}}
aggs[:home_region_id] = {terms: {field: "home_region_id"}}
{
sort: [ { created_at: { order: "desc" } }, id: { order: "desc" } ],
aggs: aggs
}
end
我存储在对象es_response中的响应。
当我搜索两个聚合时,我只能找到响应中的最后一个。
es_response.response [“aggregrations”]仅包含最新聚合对象home_region_id
的响应。
虽然有很多关于嵌套聚合的内容,但我找不到关于在同一级别上构建多个聚合的ES参考文献的大量文档。
我该如何解决这个问题?
我的ES版本是5.1