Ir para conteúdo principal Pular para conteúdo complementar

Aggr - função de gráfico

Aggr() retorna um conjunto de valores da expressão calculada sobre a dimensão indicada e as dimensões. Por exemplo, o valor máximo de vendas por cliente, por região.

A função Aggr é utilizada para agregações aninhadas, nas quais o primeiro parâmetro (a agregação interna) é calculado uma vez por valor dimensional. As dimensões são especificadas no segundo parâmetro (e parâmetros subsequentes).

Além disso, a função Aggr deve ser incluída em uma função de agregação externa usando a matriz de resultados da função Aggr como entrada para a agregação na qual ela está aninhada.

Sintaxe:  

Aggr({SetExpression}[DISTINCT] [NODISTINCT ] expr, StructuredParameter{, StructuredParameter})

Tipo de dados de retorno: dual

Argumentos:  

Argumentos
Argumento Descrição
expr

Uma expressão normal consiste em uma função de agregação. Por padrão, a função de agregação agregará um conjunto de registros possíveis definidos pela seleção.

StructuredParameter

StructuredParameter consiste em uma dimensão e, opcionalmente, em critérios de classificação no formato: (Dimension(Sort-type, Ordering))

A dimensão é um campo único e não pode ser uma expressão. A dimensão é usada para determinar a matriz de valores para a qual a expressão Aggr é calculada.

Se critérios de classificação estiverem incluídos, a matriz de valores criada pela função Aggr, calculada para a dimensão, será classificada. Isso é importante quando a ordem de classificação afeta o resultado da expressão da função Aggr em que está delimitada.

Para obter detalhes de como usar critérios de classificação, consulte Adicionando critérios de classificação à dimensão no parâmetro estruturado.

SetExpression Por padrão, a função de agregação agregará um conjunto de registros possíveis definidos pela seleção. Um conjunto de registros alternativos pode ser definido por uma expressão de análise.
DISTINCT

Se o argumento da expressão for precedido pelo qualificador distinct ou se não for usado nenhum qualificador, cada combinação distinta de valores de dimensão gerará somente um valor de retorno. Esta é a maneira como as agregações normais são feitas – cada combinação distinta de valores de dimensão gera uma linha no gráfico.

NODISTINCT

Se o argumento da expressão for precedido pelo qualificador nodistinct, cada combinação de valores de dimensão poderá gerar mais de um valor de retorno, dependendo da estrutura de dados subjacente. Se houver apenas uma dimensão, a função aggr retornará uma matriz com o mesmo número de elementos que o número de linhas nos dados de origem.

Funções de agregação básicas, como Sum, Min e Avg, retornam um único valor numérico, enquanto a função Aggr() pode ser comparada à criação de um conjunto de resultados temporários em etapas (uma tabela virtual) com os quais outra agregação pode ser feita. Por exemplo, calculando uma média do valor de vendas ao somar as vendas por cliente em um comando Aggr() e depois calculando a média dos resultados somados: Avg(TOTAL Aggr(Sum(Sales),Customer)).

Nota de dicaUse a função Aggr() em dimensões calculadas se quiser criar agregações de gráfico aninhadas em vários níveis.

Limitações:  

Cada dimensão em uma função Aggr() deve ser um campo único e não pode ser uma expressão (dimensão calculada).

Em sua forma básica, o argumento StructuredParameter na sintaxe da função Aggr é uma dimensão única. A expressão: Aggr(Sum(Sales, Month)) encontra o valor total das vendas para cada mês. No entanto, quando delimitada em outra função de agregação, pode haver resultados inesperados, a menos que sejam utilizados critérios de classificação. Isso porque algumas dimensões podem ser classificadas por ordem alfabética ou numérica, e assim por diante.

No argumento StructuredParameter da função Aggr, você pode especificar critérios de classificação na dimensão em sua expressão. Dessa forma, você impõe uma ordem de classificação na tabela virtual que é produzida pela função Aggr.

O argumento StructuredParameter tem a seguinte sintaxe:

(FieldName, (Sort-type, Ordering))

Parâmetros estruturados podem ser aninhados:

(FieldName, (FieldName2, (Sort-type, Ordering)))

O tipo de classificação pode ser: NUMERIC, TEXT, FREQUENCY ou LOAD_ORDER.

Os tipos de ordenação associados a cada tipo de classificação são os seguintes:

Tipos de ordenação permitidos
Tipo de classificação Tipos de ordenação permitidos
NUMERIC ASCENDING, DESCENDING ou REVERSE
TEXT ASCENDING, A2Z, DESCENDING, REVERSE ou Z2A
FREQUENCY DESCENDING, REVERSE ou ASCENDING
LOAD_ORDER ASCENDING, ORIGINAL, DESCENDING ou REVERSE

Os tipos de ordenação REVERSE e DESCENDING são equivalentes.

Para o Tipo de classificação TEXT, os tipos de ordenação ASCENDING e A2Z são equivalentes, e DESCENDING, REVERSE e Z2A são equivalentes.

Para o Tipo de classificação LOAD_ORDER, os tipos de ordenação ASCENDING e ORIGINAL são equivalentes.

Exemplos: Expressões de gráfico usando Agg

Esta página ajudou?

Se você encontrar algum problema com esta página ou seu conteúdo - um erro de digitação, uma etapa ausente ou um erro técnico - informe-nos como podemos melhorar!