比如有一張聯絡歷史表,裡面有使用者uid,**號number,使用者所屬國家country,通話時長talktime幾個主要字段。現在的需求是要獲取平均通話時長最長的top 20個國家。
先過濾掉一些不需要的資料,然後根據country分桶,在桶內求平均通話時長。最後根據每個桶的平均通話時長取top 20的桶。
get talk-information-2020.04.21/_search
} ],
"filter": }}
}},
"size": 0,
"aggs": ,
"aggs":
},"country_bucket_sort": } //根據平均通話時長對桶排序
],"size": 10 //取前10個桶}}
}}
}}
elasticsearch 分組求和
我使用的是elasticsearch6.4.3,resthighlevelclient獲取客戶端,直接上 吧 1 action 字段型別為long map map2 searchclient.searchgrouplong sourcebuilder,searchrequest,aggname,ag...
Elasticsearch 實現分組統計
之前有個查詢es分組求和的需求,類似關係型資料庫 select a b sum c from table group by a,b 當時用dsl查詢語句實現 這邊記錄下 get my index my type search aggs aggs 說明 1.環境居於es 5.4.3 版本,查詢語句在k...
elasticsearch 7 聚合統計 分組聚合
原文 get index type search 返回值表示,15,20 區間內的值有1個,20,25 區間內的值有0個,25,30 區間內的值有1個,30,35 區間內的值有1個。1 直方圖篩選規則 舉個例子,有乙個price欄位,這個字段描述了商品的 現在想每隔5就建立乙個桶,統計每隔區間都有多...