Concat - fonction de graphique
Concat() permet de combiner des valeurs de chaîne. Cette fonction renvoie la concaténation de chaînes agrégée de toutes les valeurs incluses dans l'expression évaluée pour chaque dimension.
Concat({[SetExpression] [DISTINCT] [TOTAL [<fld{, fld}>]]} string[, delimiter[, sort_weight]])
chaîne
Argument | Description |
---|---|
string |
Expression ou champ contenant la chaîne à traiter. |
delimiter | Les valeurs peuvent être séparées par la chaîne indiquée dans l'argument delimiter. |
sort-weight |
L'ordre de concaténation peut être déterminé par la valeur de la dimension sort-weight, le cas échéant, avec la chaîne correspondant à la valeur la plus basse apparaissant en premier dans la concaténation.. |
SetExpression | Par défaut, la fonction d'agrégation couvre l'ensemble des enregistrements possibles définis par la sélection. Il est possible de définir un ensemble d'enregistrements alternatif à l'aide d'une expression d'analyse d'ensembles. |
DISTINCT | Si le terme DISTINCT précède les arguments de la fonction, les doublons résultant de l'évaluation des arguments de la fonction sont ignorés. |
TOTAL |
Si le terme TOTAL précède les arguments de la fonction, le calcul est effectué à partir de toutes les valeurs possibles au vu des sélections actives, et pas seulement à partir de celles qui sont associées à la valeur dimensionnelle active. Autrement dit, les dimensions du graphique ne sont pas prises en compte. En utilisant TOTAL [<fld {.fld}>], où le qualificateur TOTAL est suivi d'un ou de plusieurs noms constituant un sous-ensemble des variables de dimension du graphique, vous créez un sous-ensemble du nombre total de valeurs possibles. |
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 |
Exemple | Résultat |
---|---|
Concat(Team) |
La table est créée à partir des dimensions SalesGroup et Amount, et des variations de la mesure Concat(Team). Sans tenir compte du résultat des totaux, notez que même si des données existent pour huit valeurs de la colonne Team réparties sur deux valeurs de la colonne SalesGroup, le seul résultat de la mesure Concat(Team) qui aboutit à une concaténation de plus d'une valeur de chaîne Team dans la table est la ligne contenant la dimension Amount 20000, qui aboutit au résultat BetaGammaGamma. Ceci s'explique par le fait qu'il existe trois valeurs de données d'entrée pour la cellule 20000 sous Amount. Les autres résultats ne sont pas concaténés lorsque la mesure s'étend sur les dimensions, car il n'y a qu'une seule valeur Team pour chaque combinaison de SalesGroup et Amount. |
Concat(DISTINCT Team,', ') | Beta, Gamma, puisque le qualificateur DISTINCT signifie que le résultat Gamma en double est ignoré. De plus, l'argument « delimiter » est défini comme une virgule suivie d'un espace. |
Concat (TOTAL <SalesGroup> Team) | Toutes les valeurs de chaîne se rapportant aux valeurs de la mesure Team sont concaténées si le qualificateur TOTAL est utilisé. Si vous spécifiez la sélection de champ <SalesGroup>, les résultats sont divisés selon les deux valeurs de la dimension SalesGroup. Pour la valeur SalesGroupEast, les résultats correspondent à AlphaBetaDeltaGammaGamma. Pour la valeur SalesGroupWest, les résultats correspondent à EpsilonEtaThetaZeta. |
Concat (TOTAL <SalesGroup> Team,';', Amount) | En ajoutant l'argument pour sort-weight : Amount, les résultats sont triés d'après la valeur de la dimension Amount. Les résultats obtenus sont DeltaBetaGammaGammaAlpha et EtaEpsilonZEtaTheta. |
Données utilisées dans l'exemple :
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 '|');