【发布时间】:2018-07-10 12:27:24
【问题描述】:
我在提取聚合值时遇到问题。
配置是 spring-boot-starter-data-elasticsearch。
在数据库中多次索引的文档用户。
我想返回字段“cmetsCnt”的总和
@Autowired
ElasticsearchTemplate elasticsearchTemplate;
SearchQuery searchQuery = new NativeSearchQueryBuilder()
.withIndices("comment")
.withQuery(matchQuery("user", userName))
.addAggregation(AggregationBuilders.sum("sum_of_comments").field("commentsCnt"))
.build();
Aggregations aggregations = elasticsearchTemplate.query(searchQuery,
new ResultsExtractor<Aggregations>() {
@Override
public Aggregations extract(SearchResponse response) {
return response.getAggregations();
}
});
Aggregation ret = aggregations.get("sum_of_comments");
如何提取价值?也许有更好的方法?
【问题讨论】:
标签: java spring-boot elasticsearch