Class InsertDefaultInnerTimeSeriesAggregate

java.lang.Object
org.elasticsearch.xpack.esql.rule.Rule<LogicalPlan,LogicalPlan>
org.elasticsearch.xpack.esql.analysis.InsertDefaultInnerTimeSeriesAggregate

public class InsertDefaultInnerTimeSeriesAggregate extends Rule<LogicalPlan,LogicalPlan>
Ensures that TypedAttributes used inside a TimeSeriesAggregate are wrapped in a TimeSeriesAggregateFunction. Examples:
 foo + bar ->
 LAST_OVER_TIME(foo) + LAST_OVER_TIME(bar)

 SUM(foo + LAST_OVER_TIME(bar)) ->
 SUM(LAST_OVER_TIME(foo) + LAST_OVER_TIME(bar))

 foo / 2 + bar * 2 ->
 LAST_OVER_TIME(foo) / 2 + LAST_OVER_TIME(bar) * 2

 LAST(field, @timestamp) ->
 LAST(LAST_OVER_TIME(field), MAX_OVER_TIME(@timestamp))

 FIRST(field, @timestamp) ->
 FIRST(FIRST_OVER_TIME(field), MIN_OVER_TIME(@timestamp))