日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網(wǎng)站首頁 編程語言 正文

ES聚合查詢+條件搜索的實現(xiàn)

作者:桂亭亭 更新時間: 2023-07-04 編程語言

?

    public void bucketGroup() {
        SearchRequest request = new SearchRequest();

        /**
         * 查詢條件
         */
        SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
        request.indices("smsp_collect_info_new");
        // 查詢某城市
        searchSourceBuilder.query(QueryBuilders.matchQuery("city", integer));
        // 構(gòu)建聚合查詢,并統(tǒng)計數(shù)量
        //  AggregationBuilders.terms("your_agg_name").field("master_port"),表示對master_port字
        //   段進行聚合,相當于sql group by master_port,其中your_agg_name是我們對聚合字段起的別名
        //  ,到時候我們就可以通過這個別名獲取到聚合的數(shù)量
        // AggregationBuilders.count("count_number").field("id"))表示對id字段進行count,就是計數(shù),
        // 其中count_number是我們?yōu)橛嫈?shù)字段起的別名,同上方一個道理, 此轉(zhuǎn)換為sql應(yīng)該是select count(id)
        //    from xx where city=xx group by master_port;
        searchSourceBuilder.aggregation(AggregationBuilders
                .terms("your_agg_name")
                .field("master_port")
                .subAggregation(AggregationBuilders.count("count_number")
                        .field("id")).size(10000));

        //放入文檔中
        request.source(searchSourceBuilder);
        //遠程查詢
        SearchResponse response = client.search(request, RequestOptions.DEFAULT);
        //元素數(shù)量
        SearchHits hits1 = response.getHits();
        // 獲取聚合結(jié)果給
        Terms termsAggregation = response.getAggregations().get("your_agg_name");
        // 桶聚合
        for (Terms.Bucket bucket : termsAggregation.getBuckets()) {
        // 獲取聚合的key的值,也就是master_port的每一項的值
            String key = bucket.getKeyAsString();
        // 獲取當前的master_count的聚合的數(shù)量
            ValueCount countAggregation = bucket.getAggregations().get("count_number");
            long countValue = countAggregation.getValue();
        }
    }

原文鏈接:https://blog.csdn.net/qq_53679247/article/details/131471297

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新