Concat - função de gráfico
Concat() é usado para combinar valores dos caracteres. A função retorna a concatenação de caracteres agregada de todos os valores da expressão avaliada em cada dimensão.
Sintaxe:
Concat({[SetExpression] [DISTINCT] [TOTAL [<fld{, fld}>]]} string[, delimiter[, sort_weight]])
Tipo de dados de retorno: caractere
Argumentos:
Argumento | Descrição |
---|---|
string |
A expressão ou campo que contém a string a ser processada. |
delimiter | Cada valor pode ser separado pelo caractere encontrado em delimiter. |
sort-weight |
A ordem de concatenação pode ser determinada pelo valor de dimensão sort-weight, caso esteja presente, com o caractere correspondente ao valor mais baixo aparecendo primeiro na concatenação. |
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 a palavra DISTINCT aparecer antes dos argumentos de função, as duplicatas resultantes da avaliação dos argumentos de função serão ignoradas. |
TOTAL |
Se a palavra TOTAL ocorrer antes dos argumentos da função, o cálculo será feito sobre todos os valores possíveis, dadas as seleções atuais, e não apenas sobre os pertinentes ao valor dimensional atual, isto é, desconsiderando as dimensões do gráfico. Usando TOTAL [<fld {.fld}>], em que o qualificador TOTAL é seguido por uma lista de um ou mais nomes de campo como um subconjunto das variáveis de dimensão de gráfico, você cria um subconjunto dos valores possíveis totais. |
Exemplos e resultados:
SalesGroup | Amount | Concat(Team) | Concat(TOTAL <SalesGroup> Team) |
---|---|---|---|
East | 25000 | Alpha | AlphaBetaDeltaGammaGamma |
East | 20000 | BetaGammaGamma | AlphaBetaDeltaGammaGamma |
East | 14000 | Delta | AlphaBetaDeltaGammaGamma |
West | 17000 | Epsilon | EpsilonEtaThetaZeta |
West | 14000 | Eta | EpsilonEtaThetaZeta |
West | 23000 | Theta | EpsilonEtaThetaZeta |
West | 19000 | Zeta | EpsilonEtaThetaZeta |
Exemplo | Resultado |
---|---|
Concat(Team) |
A tabela é criada a partir das dimensões SalesGroup e Amount e das variações da medida Concat(Team). Ignorando o resultado total, observe que embora existam dados para oito valores de Team distribuídos para dois valores de SalesGroup, o único resultado da medida Concat(Team) que concatena mais de um valor de caracteres Team na tabela é a linha que contém a dimensão Amount 20000, que dá o resultado BetaGammaGamma. Isso ocorre porque existem três valores para Amount 20000 nos dados de entrada. Todos os demais resultados permanecem desconcatenados quando a medida é estendida para as dimensões, porque há apenas um valor de Team para cada combinação de SalesGroup e Amount. |
Concat(DISTINCT Team,', ') | Beta, Gamma. porque o qualificador DISTINCT significa que o resultado Gamma duplicado é desconsiderado. Além disso, o argumento do delimitador é definido como uma vírgula seguida por um espaço. |
Concat (TOTAL <SalesGroup> Team) | Todos os valores de string para todos os valores de Team são concatenados se o qualificador TOTAL for usado. Com a seleção de campo <SalesGroup> especificada, isso divide os resultados em dois valores da dimensão SalesGroup. Para o SalesGroupEast, os resultados são AlphaBetaDeltaGammaGamma. Para o SalesGroupWest, os resultados são EpsilonEtaThetaZeta. |
Concat (TOTAL <SalesGroup> Team,';', Amount) | Ao adicionar o argumento para sort-weight: Amount, os resultados são ordenados pelo valor da dimensão Amount. Os resultados tornam-se DeltaBetaGammaGammaAlpha e EtaEpsilonZEtaTheta. |
Dados usados no exemplo:
TeamData:
LOAD * inline [
SalesGroup|Team|Date|Amount
East|Gamma|01/05/2013|20000
East|Gamma|02/05/2013|20000
West|Zeta|01/06/2013|19000
East|Alpha|01/07/2013|25000
East|Delta|01/08/2013|14000
West|Epsilon|01/09/2013|17000
West|Eta|01/10/2013|14000
East|Beta|01/11/2013|20000
West|Theta|01/12/2013|23000
] (delimiter is '|');