Support expressions in the arg
of @aggregate
#5242
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
It is now possible to use a restricted subset of SQL expressions in the
arg
of@aggregate
annotations. Some examples of what's possible now:@aggregate(fn: "sum", arg: "price * amount")
@aggregate(fn: "max", arg: "greatest(amount0, amount1)")
@aggregate(fn: "sum", arg: "case when amount0 > amount1 then amount0 else 0 end")
This will help reduce the values that a timeseries needs to store; without this addition, all of the above would have required that mappings calculate these expressions and store them in a separate field in the timeseries.