zoukankan      html  css  js  c++  java
  • Es 聚合查询的写法

    @Test
        public void testQuerySearch() {
            SearchRequest request = new SearchRequest();
            request.indices("es_user");
            SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
    
            sourceBuilder.query(QueryBuilders.matchQuery("address","shenyang"));
            TermsAggregationBuilder ageAgg = AggregationBuilders.terms("ageAgg").field("age").size(10);
            sourceBuilder.aggregation(ageAgg);
    
            AvgAggregationBuilder balanceAvg = AggregationBuilders.avg("balanceAvg").field("salary");
            sourceBuilder.aggregation(balanceAvg);
            request.source(sourceBuilder);
            System.out.println(sourceBuilder.toString());
            try {
                SearchResponse response = restHighLevelClient.search(request, RequestOptions.DEFAULT);
                SearchHit[] searchHtis = response.getHits().getHits();
                for (SearchHit searchHit : searchHtis) {
                    Map<String, Object> sourceResult = searchHit.getSourceAsMap();
                    System.out.println(sourceResult.get("user_name"));
                }
    
                Aggregations aggregations = response.getAggregations();
                Terms ageAgg1 = aggregations.get("ageAgg");
                for (Terms.Bucket bucket : ageAgg1.getBuckets()) {
                    String keyAsString = bucket.getKeyAsString();
                    System.out.println("用户年龄: " + keyAsString + " 人数:" + bucket.getDocCount());
                }
    
                Avg balanceAvg1 = aggregations.get("balanceAvg");
                System.out.println("平均薪资:" + balanceAvg1.getValue());
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
  • 相关阅读:
    Scrapy爬虫之from import错误解决
    Mysql之IF嵌套和CASE WHEN的转化
    win10安装Redis
    win10安装elasticsearch
    Flink输出到JDBC
    Flink输出到Elasticsearch
    Flink输出到Redis
    IntelliJ IDEA 激活—2020年1月10号
    Flink输出到Kafka(两种方式)
    用C写一个功能较为完善的贪吃蛇小游戏
  • 原文地址:https://www.cnblogs.com/juniorMa/p/14734099.html
Copyright © 2011-2022 走看看