当前位置 : 主页 > 编程语言 > java >

elasticsearch统计数量

来源:互联网 收集:自由互联 发布时间:2023-02-04
Elasticsearch根据条件统计结果数量 post ip : port / index / type / _search { "from" : 0 , "size" : 0 , "query" : { "bool" : { "must" : [{ "match_phrase" : { "name" : { "query" : "aaaa" , "slop" : 0 , "boost" : 1 } } }, { "range" :

Elasticsearch根据条件统计结果数量

post ip:port/index/type/_search{ "from": 0, "size": 0, "query": { "bool": { "must": [{ "match_phrase": { "name": { "query": "aaaa", "slop": 0, "boost": 1 } } }, { "range": { "startTime": { "from": 1661616000391, "to": null, "include_lower": true, "include_upper": true, "boost": 1 } } } ] } }, "_source": { "includes": [ "COUNT" ], "excludes": [] }, "aggregations": { "COUNT(*)": { "value_count": { "field": "_index" } } }}

java代码:

SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();AggregationBuilder sumAggregationBuilder = AggregationBuilders.count("count").field("_index");sourceBuilder.aggregation(sumAggregationBuilder);BoolQueryBuilder queryBuilder = QueryBuilders.boolQuery();//查询条件queryBuilder.must(QueryBuilders.matchPhraseQuery("name.keyword",name));queryBuilder.must(QueryBuilders.rangeQuery("startTime").gte(startTime));//设置条件和结果数量sourceBuilder.query(queryBuilder).from(0).size(0);//查询索引对象SearchRequest searchRequest = new SearchRequest(index).types(type).source(sourceBuilder);//不同版本请求ES的方式不一样SearchResponse response = client.search(searchRequest).actionGet();SearchResponse response = client.getClient().search(rq,RequestOptions.DEFAULT);//返回结果long total = response.getHits().getTotalHits();
上一篇:狂神说 spring5
下一篇:没有了
网友评论