【发布时间】:2020-08-25 20:59:41
【问题描述】:
我正在做这样的聚合:
{
"size":0,
"aggs":
{
"my_aggs":
{
"terms":
{
"field":"my_field"
}
}
}
}
我只想得到聚合结果。因此,当我像下面这样设置size=0 时,它会给出错误 - 后来才知道这是我想要多少个结果(聚合)。那么,我怎样才能做到这一点才能只获得聚合结果(没有命中结果文档)
AbstractAggregationBuilder aggregationBuilder = AggregationBuilders
.terms("my_aggs")
.field("my_field")
.size(0) //how to set size for my purpose?
.order(BucketOrder.key(true));
此外,如果我得到数千个聚合结果,此查询是否会返回所有这些结果?或适用于其默认的 10 大小?如果没有,如何知道我应该设置多少聚合结果的大小。
编辑我正在添加我的聚合,如下所示:
SearchQuery searchQuery = new NativeSearchQueryBuilder()
.withIndices(indexName)
.withTypes(typeName)
.withQuery(boolQueryBuilder)
.addAggregation(aggregationBuilder)
.build();
请帮忙。
【问题讨论】:
标签: java elasticsearch