У меня есть дубликаты идентификаторов в моей БД, и я хочу получить счет для отдельных значений, только похожих на SELECT COUNT (столбец DISTINCT) FROM в SQL.
public SearchSourceBuilder createQueryForCount(QueryBuilder queryBuilder, int start, boolean fetchSource, String field){
logger.info("Creating aggregation count ");
QueryBuilder finalQuery = QueryBuilders.boolQuery().must(queryBuilder);
AggregationBuilder aggregationCount = AggregationBuilders.terms("agg").field(USER_ID)
.subAggregation(AggregationBuilders.topHits("top").explain(false).from(start))
.subAggregation(AggregationBuilders.count("count").field(field));
return new SearchSourceBuilder()
.query(finalQuery)
.fetchSource(fetchSource)
.from(start)
.aggregation(aggregationCount);
}
Есть ли способ сделать отдельныйсчитать в упругом поиске?