es java 聚合方法——聚合後根據count排序並取前2條資料

柒然發表於2018-07-13

聚合後根據count排序並取每組前2條資料

/**
     * 聚合後根據count排序並取前2條資料
     */
    @Test
    public void orderAfterAggregation(){
        SearchResponse response = client.prepareSearch("twitter").setTypes("tweet")
                .addAggregation(AggregationBuilders.terms("countAgg").field("age.keyword")
                        .order(Terms.Order.count(false)).size(2))  //true:正序  false:倒序
                .get();
        Terms countAgg = response.getAggregations().get("countAgg");
        for (Terms.Bucket entry : countAgg.getBuckets()) {
            System.out.println("age:"+entry.getKey()+"---------"+"count:"+entry.getDocCount());
        }
    }

es版本號:5.5.1

相關文章