@Override @JsonIgnore public Collection<PostAggregation> getPostAggregations() { return Stream.concat(getInnerQueryUnchecked().getPostAggregations().stream(), postAggregations.stream()) .collect(Collectors.toCollection(LinkedHashSet<PostAggregation>::new)); }
/** * Produce the schema-defining columns for a given druid query. * * @return A stream of columns based on the signature of the Druid Query. */ default Stream<Column> buildSchemaColumns() { return Stream.of( getDimensions().stream() .map(DimensionColumn::new), Stream.concat( getAggregations().stream() .map(Aggregation::getName), getPostAggregations().stream() .map(PostAggregation::getName) ).map(MetricColumn::new) ).flatMap(Function.identity()); } }
for (PostAggregation postAggregation : druidQuery.getPostAggregations()) { Number postAggResult = postAggregationEvaluator.calculate( postAggregation,
/** * Wraps a query as a GroupBy Query. * * @param query The query to wrap. */ public SqlAggregationQuery(DruidAggregationQuery<?> query) { this( query.getDataSource(), query.getGranularity(), query.getDimensions(), query.getFilter(), query.getAggregations(), query.getPostAggregations(), query.getIntervals(), query.getContext() ); }