zoukankan      html  css  js  c++  java
  • ES-JavaAPI实现 group by 查询

    public Set<String> queryBzms() {
        Set<String> result = new HashSet<>();
        try {
            // 搜索出成功上报的原始数据
            Object[] objects = new Object[]{};
            // 查询的结果字段,类似于(select id, XSE from ..)
            String[] fields = {"BZM"};
            FetchSourceContext sourceContext = new FetchSourceContext(true, fields, null);
            SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
            searchSourceBuilder.query(QueryBuilders.boolQuery().must(QueryBuilders.existsQuery("BZM")));
            searchSourceBuilder.fetchSource(sourceContext);
            searchSourceBuilder.aggregation(AggregationBuilders.terms("BZM_group").field("BZM").size(Constant.max_es_size));
            String[] indes = {this.getAliase()};
            SearchRequest searchRequest = new SearchRequest(indes, searchSourceBuilder);
            searchSourceBuilder.size(0);
            SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
            long total = 0;
            Terms terms = searchResponse.getAggregations().get("BZM_group");
            for (Terms.Bucket bucket : terms.getBuckets()) {
                String bzm = bucket.getKeyAsString();
                result.add(bzm);
                total += 1;
            }
            logger.info("-------------- query BZM number by SpecificationEs to success : {} ----------------", total);
        } catch (Exception e){
            logger.error("-------------- query BZM by SpecificationEs to error : {} ----------------", e.getMessage());
        }
        return result;
    }
  • 相关阅读:
    ShiroConfig V2.0
    MyRealm V2.0(注:加上了权限字符串)
    ShiroUtils通用工具包
    ResourcesConfig实现配置资源路径
    MyRealm V1.0
    ShiroConfig V1.0
    MySQL
    Git实战
    scala中函数简单使用记录
    scala中Trait简单使用
  • 原文地址:https://www.cnblogs.com/chaoyou/p/14750196.html
Copyright © 2011-2022 走看看