Concat - チャート関数
Concat() は、文字列値を組み合わせるために使用します。この関数では、それぞれの軸に対して評価された数式に含まれるあらゆる値の文字列連結が返されます。
構文:
Concat({[SetExpression] [DISTINCT] [TOTAL [<fld{, fld}>]]} string[, delimiter[, sort_weight]])
戻り値データ型: string
引数:
引数 | 説明 |
---|---|
string |
処理される文字列が含まれている数式および項目。 |
delimiter | 各値は、delimiter の文字列によって区切られます。 |
sort-weight |
連結の順序は、軸 sort-weight の値によって決定されます。最小値に対応する文字列が連結の最初に表示されます。. |
SetExpression | デフォルトでは、集計関数は選択されたレコード セットに対して集計を行います。Set 分析数式でレコード セットを定義することも可能です。 |
DISTINCT | 関数の引数の前に DISTINCT という用語が付いている場合、関数の引数の評価から生じる重複は無視されます。 |
TOTAL |
関数の引数の前に TOTAL の文字が配置されている場合、現在の軸の値に関連しているものだけでなく、現在の選択範囲内にあるすべての可能な値に対して計算が実行されます。つまりチャート軸は無視されます。 TOTAL [<fld {.fld}>] (ここで、TOTAL 修飾子の後には、1 つまたは複数の項目名のリストがチャート軸変数のサブセットとして続く) を使用して、合計絞込値のサブセットを作成できます。 |
例と結果:
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 |
例 | 結果 |
---|---|
Concat(Team) |
テーブルは、軸 SalesGroup と Amount、およびメジャー Concat(Team) のバリエーションで構成されています。テーブル結果を無視すると、SalesGroup の 2 つの値にまたがる Team の 8 つの値のデータがある場合でも、テーブルでは複数の Team 文字列値を連結するメジャー Concat(Team) の結果のみが、軸 Amount 20000 を含む行になる点に注意が必要です。これにより、BetaGammaGamma が得られます。これは、入力データで Amount 20000 の値が 3 つあるためです。SalesGroup とAmount の各組み合わせの Team の値は 1 つしかないため、メジャーが軸全体にある場合は、その他すべての結果は連結されません。 |
Concat(DISTINCT Team,', ') | Beta, Gamma (DISTINCT 修飾子を使用すると、重複した Gamma の結果が無視されるため。また、区切り記号の引数がコンマとスペースで定義されているため)。 |
Concat (TOTAL <SalesGroup> Team) | TOTAL 修飾子が使用されている場合、Team のあらゆる値の文字列値がすべて連結されます。<SalesGroup> の項目選択が指定されている場合は、SalesGroup 軸の 2 つの値に結果が分割されます。SalesGroupEast の結果は AlphaBetaDeltaGammaGamma になります。SalesGroupWest の結果は EpsilonEtaThetaZeta になります。 |
Concat (TOTAL <SalesGroup> Team,';', Amount) | sort-weight:Amount の引数を追加すると、結果は Amount 軸の値によって順位が付けられます。結果は、DeltaBetaGammaGammaAlpha および EtaEpsilonZEtaTheta になります。 |
例で使用されているデータ:
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 '|');