# Concat — funkcja wykresu

Funkcja Concat() służy do łączenia wartości ciągów znaków. Funkcja ta zwraca zagregowaną konkatenację ciągów znaków ze wszystkich wartości wyrażenia obliczonych dla poszczególnych wymiarów.

Składnia:

Concat({[SetExpression] [DISTINCT] [TOTAL [&lt;fld{, fld}&gt;]]} string[, delimiter[, sort\_weight]])

Typ zwracanych danych: ciąg znaków

Argumenty:

Argumenty

| Argument | Opis |
| --- | --- |
| string | Wyrażenie lub pole zawierające ciąg znaków do przetworzenia. |
| delimiter | Wartości mogą być rozdzielane ciągiem znaków określonym argumentem delimiter. |
| sort-weight | Kolejność konkatenacji można określić opcjonalnym argumentem wymiaru sort-weight. Ciąg znaków odpowiadający najniższej wartości sortowania będzie występować na początku konkatenacji.. |
| SetExpression | Funkcja agregacji będzie domyślnie dokonywać agregacji na zbiorze możliwych wierszy zdefiniowanym przez selekcję. Alternatywny zestaw wierszy można zdefiniować za pomocą wyrażenia analizy zestawów. |
| DISTINCT | Jeśli przed argumentami funkcji występuje słowo DISTINCT, wówczas duplikaty wynikające z wyników obliczenia argumentów funkcji są pomijane. |
| TOTAL | Jeśli słowo TOTAL występuje przed argumentami funkcji, wówczas obliczenie jest wykonywane względem wszystkich możliwych wartości z uwzględnieniem bieżących selekcji, nie tylko tych należących do bieżącej wartości wymiaru, to znaczy z pominięciem wymiarów wykresu.<br><br>Korzystając z polecenia TOTAL [&lt;fld {.fld}&gt;], gdzie po kwalifikatorze TOTAL podana jest lista nazw pól stanowiących podzbiór zmiennych wymiarów wykresu, można utworzyć podzbiór wszystkich możliwych wartości.<br><br>[Określenie zakresu agregacji](https://help.qlik.com/pl-PL/sense/May2025/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm) |

Przykłady i wyniki:

Results table

| SalesGroup | Amount | Concat(Team) | Concat(TOTAL &lt;SalesGroup&gt; 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 |

Przykłady funkcji

| Przykład | Wynik |
| --- | --- |
| `Concat(Team)` | Tabela została utworzona na podstawie wymiarów SalesGroup i Amount oraz odchyleń od miary Concat(Team). Ignorując wyniki Totals, należy zauważyć, że nawet jeśli dostępne są dane dla ośmiu wartości w kolumnie Team podzielonych względem dwóch wartości w kolumnie SalesGroup, jedyny wynik miary Concat(Team), który dokonuje konkatenacji więcej niż jednej wartości ciągu Team w tej tabeli, jest w wierszu zawierającym wymiar Amount o wartości 20000, co zwraca wynik BetaGammaGamma. Dzieje się tak, ponieważ występują trzy wartości dla wymiaru Amount 20000 w danych wejściowych. Wszystkie pozostałe wyniki nie zostają poddane konkatenacji, gdy miara obejmuje wiele wymiarów, ponieważ jest tylko jedna wartość Team dla każdej kombinacji wymiarów SalesGroup i Amount. |
| `Concat(DISTINCT Team,', ')` | Beta, Gamma, ponieważ kwalifikator DISTINCT sprawia, że powtarzający się wynik Gamma zostaje zignorowany. Ponadto argument ogranicznika jest zdefiniowany jako przecinek, po którym następuje spacja. |
| `Concat (TOTAL <SalesGroup> Team)` | Wszystkie wartości ciągów dla wszystkich wartości Team są poddane konkatenacji, jeśli zastosowany został kwalifikator TOTAL. W przypadku wyboru pola &lt;SalesGroup&gt; wyniki zostają podzielone między dwie wartości wymiaru SalesGroup. W przypadku SalesGroupEast zwracane są wyniki AlphaBetaDeltaGammaGamma. W przypadku SalesGroupWest zwracane są wyniki EpsilonEtaThetaZeta. |
| `Concat (TOTAL <SalesGroup> Team,';', Amount)` | Dodanie argumentu sort-weight: Amount powoduje, że wyniki są uporządkowane według wartości wymiaru Amount. Zwracane są zatem wyniki DeltaBetaGammaGammaAlpha i EtaEpsilonZEtaTheta. |

Dane zastosowane w przykładzie:

`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 '|');`