Dual - スクリプトおよびチャート関数
Dual() は、数値と文字列を組み合わせて 1 つのレコードにし、そのレコードの数値表現をソートや計算に使用できるようする一方で、文字列値を表示に使用できるようにします。
構文:
Dual(text, number)
戻り値データ型: デュアル
引数 | 説明 |
---|---|
text | 数値引数と組み合わせて使用される文字列値。 |
number | 文字列引数の文字列と組み合わせて使用される数値。 |
Qlik Sense では、すべての項目値がデュアル値になる可能性があります。つまり、項目値には、数値とテキスト値の両方を含むことができることを意味します。この一例となるのが日付で、数値の 40908 とテキスト表記の '2011-12-31' の両方が可能です。
例 | 説明 |
---|---|
Dual(IF(DayOfWeek = 0, 'Monday', IF(DayOfWeek = 1, 'Tuesday', If(DayOfWeek = 2 ,'Wednesday', If(DayOfWeek = 3 ,'Thursday', If(DayOfWeek = 4 ,'Friday', If(DayOfWeek = 5 ,'Saturday', If(DayOfWeek = 6 ,'Sunday' ))))))), DayOfWeek) | 項目 DayOfWeek は、ビジュアライゼーションで軸として使用できます。テーブルでは、曜日はアルファベット順ではなく、正しい番号順に自動的に並べ替えられます。 |
Dual(Pick( Priority , 'Low','Medium','High'), Priority) | 項目 Priority は、ビジュアライゼーションで軸として使用できます。テーブルでは、項目 Priority はアルファベット順ではなく、正しい番号順に自動的に並べ替えられます。 |
Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3)) | 項目 Date は、ビジュアライゼーションで軸として使用できます。テキスト値 Q1 〜 Q4 が作成され、数値 1 〜 4 が割り当てられます。 |
Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date)) | 項目 Date は、ビジュアライゼーションで軸として使用できます。この例では、'2012-W22' 形式のテキスト値を作成し、同時に、週の最初の日の日付番号に対応する数値 (例: 41057) を割り当てます。 |
例 | 説明 |
---|---|
スクリプトに次の例を追加して実行します。 Load dual ( NameDay,NumDay ) as DayOfWeek inline [ NameDay,NumDay Monday,0 Tuesday,1 Wednesday,2 Thursday,3 Friday,4 Saturday,5 Sunday,6 ]; | 項目 DayOfWeek は、たとえばビジュアライゼーションで軸として使用できます。テーブルでは、曜日はアルファベット順ではなく、正しい番号順に自動的に並べ替えられます。 |
Load Dual('Q' & Ceil(Month(Now())/3), Ceil(Month(Now())/3)) as Quarter AutoGenerate 1; | この例では、現在の四半期を取得します。Now 関数が年の最初の 3 か月で実行される場合、Q1 と表示され、年の 2 番目の 3 か月で実行される場合、Q2 と表示され、以下同様に表示されます。ただし、ソートで使用する場合、Quarter は数値 1 ~ 4 として動作します。 |
Dual('Q' & Ceil(Month(Date)/3), Ceil(Month(Date)/3)) as Quarter | 上の例に示されているように、項目 Quarter はテキスト値 Q1 ~ Q4 を用いて作成され、数値 1 ~ 4 が割り当てられます。これをスクリプトで使用するには、Date の値をロードする必要があります。 |
Dual(WeekYear(Date) & '-W' & Week(Date), WeekStart(Date)) as YearWeek | この例では、項目 YearWeek (2012-W22 形式のテキスト値 を持つ) を作成し、同時にその週の最初の日の日付値に対応する数値を割り当てます (例:41057. これをスクリプトで使用するには、Date の値をロードする必要があります。 |