OPAL Window Functions¶
Window functions are like aggregate functions in that they summarize input values from multiple input rows. However, each input row generates a corresponding output value, with the window potentially sliding along the list of rows.
For example, a “trailing 5 minute average” function uses a window back for 5 minutes and produce one output row per input row. But each output row looks back across many input rows in history.
Function |
Description |
---|---|
Return any value of one column across a group |
|
Return any non-null value of one column across a group. |
|
Returns an array containing the multiset union of input arrays. |
|
Calculate the arithmetic average of the input expression across the group, or of the scalar arguments if more than one. |
|
Count the number of non-null items in the group. |
|
Estimate the approximate number of distinct values in the input using hyper-log-log. |
|
Count the exact number of distinct values in the input using complete enumeration. |
|
Calculates the value difference of the argument in each time bin for each group. |
|
Calculates the amount of difference in a column in each time bin for each group. |
|
Returns the dense rank within an ordered group of values. |
|
Calculate the average per-second derivative of the argument across the group. |
|
Calculates the exponentially weighted moving average of a value. |
|
Return the first value of one column across an ordered group. |
|
Return the first non-null value of one column across an ordered group. |
|
Returns an aggregate signed 64-bit hash value over the (unordered) set of input rows. |
|
Returns an aggregate signed 64-bit hash value over the (unordered) set of distinct input rows. |
|
Return the value of one column in a previous row across an ordered group. |
|
Return the non-null value of one column in a previous row across an ordered group. |
|
Return the last value of one column across an ordered group. |
|
Return the last non-null value of one column across an ordered group. |
|
Return the value of one column in a following row across an ordered group. |
|
Return the non-null value of one column in a following row across an ordered group. |
|
Returns the maximum value of a group of inputs. |
|
Return the fast approximate median value of one column. |
|
Return the exact median value of one column. |
|
Returns the minimum value of a group of inputs. |
|
Extract aggregated fields and values from a group of rows into a new JSON object. |
|
Returns an approximated value for the specified percentile of the input expression across the group. |
|
Assuming a continuous distribution, return the value for the specified percentile of the input expression across the group. |
|
Assuming a discrete distribution, return the value for the specified percentile of the input expression across the group. |
|
Returns the rank within an ordered group of values. |
|
Calculate the average per-second rate of the argument across the group. |
|
Return the window index of the row within its groupby, when ordered by the orderby. |
|
Calculate the standard deviation across the group. |
|
Calculate the sum of the argument across the group, or of the scalar arguments if more than one. |
|
Generate a single t-digest state out of an arbitrary number of numeric values. |
|
Combine (merge) multiple t-digest values together This function is purely an aggregate function. |
|
Returns an approximation of the top K most frequent values in the input, along with their approximate frequencies. |