## Advanced Aggregation

There is a special function for advanced aggregations:

aggr ([ distinct | nodistinct ] [{set_expression}]expression {, dimension})

Advanced Aggregation is used to returns a set of values of expression calculated over *dimensions*. The result can be compared to the expression column of a ‘local chart’, There is a special function for advanced aggregations: aggr ([ distinct | nodistinct ] [{set_expression}]expression {, dimension}) Returns a set of values of expression calculated over dimensions. The result can be compared to the expression column of a ‘local chart’, evaluated in the context where the aggr function resides. Each dimension must be asingle field. It cannot be an expression (calculated dimension). If the expression argument is preceded by the nodistinct qualifier, each combination of dimension values may generate morethan one return value, depending on underlying data structure. If the expression argument is preceded by the distinct qualifier or if no qualifier is used at all, each combination of dimension values will generate only one return value. By default, the aggregation function will aggregate over the set of possible records defined by the selection. An alternative set of records can be defined by a Set Analysis expression. By using this function in Add calculated dimension… it is possible to achieve nested chart aggregation in multiple levels. See also Nested Aggregations and Related Issues. When used in chart expressions it is possible to achieve Sum of Rows in Pivot Tables.

Examples:

aggr( sum(Sales), Country )

aggr( nodistinct sum(Sales), Country )

aggr( sum(Sales), Country, Region )

count( aggr( sum(Sales), Country ))

evaluated in the context where the aggr function resides. Each dimension must be a single field. It cannot be an expression (calculated dimension).

If the expression argument is preceded by the nodistinct qualifier, each combination of dimension values may generate more than one return value, depending on underlying data structure. If theexpression argument is preceded by the distinct qualifier or if no qualifier is used at all, each combination of dimension values will generate only one return value.

By default, the aggregation function will aggregate over the set of possible records defined by the selection. An alternative set of records can be defined by a *Set Analysis* expression.

By using this function in *Add calculated dimension… *it is possible to achieve nested chart aggregation in multiple levels. See also *Nested Aggregations and Related Issues*.

When used in chart expressions it is possible to achieve *Sum of Rows in Pivot Tables*.

Examples:

aggr( sum(Sales), Country )

aggr(nodistinct sum(Sales), Country )

aggr( sum(Sales), Country, Region )

count(aggr( sum(Sales), Country ))