Definindo o escopo de agregação
Geralmente, existem dois fatores que juntos determinam quais registros são usados para definir o valor da agregação em uma expressão. Ao trabalhar com gráficos, esses fatores são:
- Valor dimensional (de agregação em um gráfico de expressão)
- Seleções
Juntos, esses fatores definem o escopo da agregação.
Métodos de agregação
Você pode se deparar com situações em que deseja que o cálculo desconsidere a seleção, a dimensão ou ambas. Nas funções de gráfico, você pode conseguir isso usando o qualificador TOTAL, análise de conjunto ou uma combinação dos dois.
Qualificador TOTAL
Usar o qualificador total dentro de sua função de agregação desconsidera o valor dimensional. A agregação será realizada em todos os valores de campo possíveis.
O qualificador TOTAL pode vir seguido de uma lista de um ou mais nomes de campos dentro de sinais de maior e menor que. Esses nomes de campos devem ser um subconjunto das variáveis de dimensões do gráfico. Nesse caso, o cálculo é feito ignorando-se todas as variáveis de dimensões do gráfico, exceto aquelas listadas, isto é, um valor será retornado para cada combinação de valores de campo nos campos de dimensão listados. Também podem ser incluídos na lista os campos que não forem uma dimensão em um gráfico no momento. Isso pode ser útil para grupos de dimensões em que os campos de dimensões não são fixos. A lista de todas as variáveis do grupo faz com que a função tenha efeito quando o nível hierárquico for alterado.
Análise de conjunto
Usar a análise de conjunto dentro de sua agregação sobrepõe a seleção. A agregação será realizada em todos os valores divididos através das dimensões.
Qualificador TOTAL e análise de conjunto
Usar o qualificador TOTAL e a análise de conjunto dentro de sua agregação sobrepõe a seleção e desconsidera as dimensões.
ALL Qualificador
Usar o qualificador ALL dentro de sua agregação desconsidera a seleção e as dimensões. O equivalente pode ser obtido com o comando de análise de conjunto {1} e com o qualificador TOTAL :
=sum(All Sales)
=sum({1} Total Sales)
Exemplos
Exemplo: qualificador TOTAL
O exemplo a seguir mostra como TOTAL pode ser utilizado para calcular uma ação relativa. Supondo-se que Q2 foi selecionado, usar TOTAL calcula a soma de todos os valores desconsiderando as dimensões.
Year | Quarter | Sum(Amount) | Sum(TOTAL Amount) | Sum(Amount)/Sum(TOTAL Amount) |
---|---|---|---|---|
- | - | 3000 | 3000 | 100% |
2012 | Q2 | 1700 | 3000 | 56,7% |
2013 | Q2 | 1300 | 3000 | 43,3% |
Exemplo: Análise de conjunto
O exemplo a seguir mostra como a análise de conjunto pode ser usada para fazer uma comparação entre os conjuntos de dados antes de fazer qualquer seleção. Supondo-se que Q2 foi selecionado, usar a análise de conjunto com a definição do conjunto {1} calcula a soma de todos os valores desconsiderando as seleções, mas dividindo pelas dimensões.
Year | Quarter | Sum(Amount) | Sum({1} Amount) | Sum(Amount)/Sum({1} Amount) |
---|---|---|---|---|
- | - | 3000 | 10800 | 27,8% |
2012 | Q1 | 0 | 1100 | 0% |
2012 | Q3 | 0 | 1400 | 0% |
2012 | Q4 | 0 | 1800 | 0% |
2012 | Q2 | 1700 | 1700 | 100% |
2013 | Q1 | 0 | 1000 | 0% |
2013 | Q3 | 0 | 1100 | 0% |
2013 | Q4 | 0 | 1400 | 0% |
2013 | Q2 | 1300 | 1300 | 100% |
Exemplo: qualificador TOTAL e análise de conjunto
O exemplo a seguir mostra como a análise de conjunto e o qualificador TOTAL podem ser combinados para fazer uma comparação entre os conjuntos de dados antes de fazer qualquer seleção em todas as dimensões. Supondo-se que Q2 foi selecionado, usar a análise de conjunto com a definição do conjunto {1] e o qualificador TOTAL calcula a soma de todos os valores desconsiderando as seleções e desconsiderando as dimensões.
Year | Quarter | Sum(Amount) | Sum({1} TOTAL Amount) | Sum(Amount)/Sum({1} TOTAL Amount) |
---|---|---|---|---|
- | - | 3000 | 10800 | 27,8% |
2012 | Q2 | 1700 | 10800 | 15,7% |
2013 | Q2 | 1300 | 10800 | 12% |
Dados usados nos exemplos:
AggregationScope:
LOAD * inline [
Year Quarter Amount
2012 Q1 1100
2012 Q2 1700
2012 Q3 1400
2012 Q4 1800
2013 Q1 1000
2013 Q2 1300
2013 Q3 1100
2013 Q4 1400] (delimiter is ' ');