# Dual - スクリプトおよびチャート関数

Dual() は、数値と文字列を組み合わせて 1 つのレコードにし、そのレコードの数値表現をソートや計算に使用できるようする一方で、文字列値を表示に使用できるようにします。

構文:

Dual(text, number)

戻り値データ型： デュアル

情報メモデュアルの戻り値はすべて右揃えです。

引数：

引数

| 引数 | 説明 |
| --- | --- |
| text | 数値引数と組み合わせて使用される文字列値。 |
| number | 文字列引数の文字列と組み合わせて使用される数値。 |

Qlik Sense では、すべての項目値がデュアル値になる可能性があります。つまり、項目値には、数値とテキスト値の両方を含むことができることを意味します。この一例となるのが日付で、数値の 40908 とテキスト表記の '2011-12-31' の両方が可能です。

情報メモ1 つの項目に読み込まれている複数のデータ アイテムで、文字列表現が異なっていても同じ有効な数値が表現があるなら、それらはすべて最初に出現した文字列表現を共有します。

ヒント メモdual 関数は、一般的にスクリプトの早い段階、関係する項目に他のデータが読み取られる前に使用され、フィルター パネルなどで表示される最初の文字列表現を作成します。

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/FormattingFunctions/Dual.htm)

#### 例と結果:

スクリプトの例

| 例 | 説明 |
| --- | --- |
| スクリプトに次の例を追加して実行します。<br><br>`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<br>Dual('Q' & Ceil(Month(Now())/3), Ceil(Month(Now())/3)) as Quarter<br>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 の値をロードする必要があります。 |