Concat - 차트 함수
Concat()은 문자열 값을 결합하는 데 사용됩니다. 이 함수는 각 차원에서 평가된 표현식의 모든 값에 대해 집계된 문자열 연결을 반환합니다.
Concat({[SetExpression] [DISTINCT] [TOTAL [<fld{, fld}>]]} string[, delimiter[, sort_weight]])
반환 데이터 유형: 문자열
| 인수 | 설명 |
|---|---|
| string |
처리할 문자열이 포함된 표현식 또는 필드입니다. |
| delimiter | 각 값은 delimiter에 있는 문자열로 구분할 수 있습니다. |
| sort_weight |
연결 순서는 sort_weight 차원의 값(존재하는 경우)에 따라 결정될 수 있으며, 가장 낮은 값에 해당하는 문자열이 연결에서 가장 먼저 나타납니다. 0이 sort_weight 인수 값으로 사용되는 경우 출력에 정렬이 적용되지 않습니다. sort_weight 인수가 생략된 경우 함수는 기본적으로 영숫자 정렬을 수행합니다. |
| SetExpression | 기본적으로 집계 함수는 선택에 의해 정의된 사용 가능한 레코드의 집합을 집계합니다. 집합 분석 표현식으로 대체 레코드 집합을 정의할 수 있습니다. |
| DISTINCT | 함수 인수 앞에 DISTINCT라는 단어가 있을 경우 해당 함수 인수의 평가 결과로 생성된 중복이 무시됩니다. |
| TOTAL |
TOTAL이 함수 인수 앞에 오는 경우, 현재 선택을 고려하되 현재 차원 값에 관련되지 않은 가능한 모든 값에 대한 계산이 실행됩니다. 즉, 차트 차원은 무시됩니다. TOTAL [<fld {.fld}>](여기서 TOTAL 한정자 뒤에는 하나 이상의 필드 이름 목록이 차트 차원 변수의 하위 집합으로 옴)을 사용하여 가능한 전체 값의 하위 집합을 만듭니다. |
| SalesGroup | Amount | Concat(Team) | Concat(TOTAL <SalesGroup> Team) | Concat(Team, ', ', 0) | Concat(TOTAL <SalesGroup> Team, '', 0) |
|---|---|---|---|---|---|
| East | 14000 | Delta | AlphaBetaDeltaGammaGamma | Delta | GammaGammaAlphaDeltaBeta |
| East | 20000 | BetaGammaGamma | AlphaBetaDeltaGammaGamma | GammaGammaBeta | GammaGammaAlphaDeltaBeta |
| East | 25000 | Alpha | AlphaBetaDeltaGammaGamma | Alpha | GammaGammaAlphaDeltaBeta |
| West | 14000 | Eta | EpsilonEtaThetaZeta | Eta | ZetaEpsilonEtaTheta |
| West | 17000 | Epsilon | EpsilonEtaThetaZeta | Epsilon | ZetaEpsilonEtaTheta |
| West | 19000 | Zeta | EpsilonEtaThetaZeta | Zeta | ZetaEpsilonEtaTheta |
| West | 23000 | Theta | EpsilonEtaThetaZeta | Theta | ZetaEpsilonEtaTheta |
| 예 | 결과 |
|---|---|
| Concat(Team) |
이 테이블은 차원 SalesGroup 및 Amount와 측정값 Concat(Team)의 변형으로 구성됩니다. 합계 결과를 무시하고, 두 개의 SalesGroup 값에 걸쳐 8개의 Team 값에 대한 데이터가 있음에도 불구하고, 테이블에서 둘 이상의 Team 문자열 값을 결합하는 측정값 Concat(Team)의 유일한 결과는 차원 Amount 20000이 포함된 행이며, 그 결과는 BetaGammaGamma입니다. 이는 입력 데이터에 Amount 20000에 대한 세 개의 값이 있기 때문입니다. SalesGroup 및 Amount의 각 조합에 대해 Team 값이 하나만 있기 때문에 측정값이 차원에 걸쳐 있을 때 다른 모든 결과는 결합되지 않은 상태로 유지됩니다. |
| Concat(DISTINCT Team,', ') | Beta, Gamma. DISTINCT 지정자는 복제된 Gamma 결과가 무시됨을 의미하기 때문입니다. 또한 구분 기호 인수는 쉼표 뒤에 공백이 오는 것으로 정의됩니다. |
| Concat (TOTAL <SalesGroup> Team) | TOTAL 지정자를 사용하면 Team의 모든 값에 대한 모든 문자열 값이 결합됩니다. 필드 선택 <SalesGroup>이 지정되면 결과를 차원 SalesGroup의 두 값으로 나눕니다. SalesGroupEast의 경우 결과는 AlphaBetaDeltaGammaGamma입니다. SalesGroupWest의 경우 결과는 EpsilonEtaThetaZeta입니다. |
| Concat (TOTAL <SalesGroup> Team,';', Amount) | sort_weight에 대한 인수 Amount를 추가하면 차원 Amount의 값에 따라 결과가 정렬됩니다. 결과는 DeltaBetaGammaGammaAlpha 및 EtaEpsilonZEtaTheta가 됩니다. |
| Concat(Team, '', 0) | sort_weight가 0으로 설정되면 결과가 정렬되지 않습니다. |
| Concat(TOTAL <SalesGroup> Team, '', 0) | sort_weight가 0으로 설정되면 결과가 정렬되지 않습니다. 또한 TOTAL 지정자가 사용되므로 Team의 모든 값에 대한 모든 문자열 값이 결합됩니다. |
예에 사용된 데이터:
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 '|');