The calling patterns for the user-supplied aggregate UDF functions are more complex and varied than the scalar calling patterns. This section shows example calling sequences that IQ UDAFs encounter for different SQL statements. These examples use this table definition:
create table t (a int, b int, c int) insert into t values (1, 1, 1) insert into t values (2, 1, 1) insert into t values (3, 1, 1) insert into t values (4, 2, 1) insert into t values (5, 2, 1) insert into t values (6, 2, 1)
The following abbreviation is used:
RR = a_v3_extfn_aggregate_context. _result_row_offset_from_start_of_partition – This value indicates the current row number inside the current partition for which a value is calculated. The value is set during windowed aggregates and is intended to be used during the evaluation step of unbounded windows; it is available at all evaluate calls.