# autonumber スクリプト関数

このスクリプト関数は、スクリプトの実行中に発生する expression の個々の評価値について、一意の整数値を返します。この関数は、複合キーのコンパクト メモリ表示を作成する場合などに使用します。

情報メモautonumberキーは、テーブルが読み込まれた順番で生成されるため、同じデータ ロードで生成された場合のみ結合できます。ソース データのソート処理から独立してデータ ロード間で恒久的に維持されるキーを使用する必要がある場合は、hash128 関数、hash160 関数、hash256 関数を使用する必要があります。

構文:

autonumber(expression[ , AutoID])

引数：

| 引数 | 説明 |
| --- | --- |
| AutoID | autonumber 関数が 1 つのスクリプト内の複数のキーで使用されている場合に、複数のカウンタ インスタンスを作成するには、オプションのパラメータ AutoID を使用して各カウンタに名前を付けます。 |

複合キーの作成

この例では、メモリを保護するために、autonumber 関数を使用して複合キーを作成します。この例は、デモのために、簡略化したものになっていますが、この方法が効果的なのは、多数の行が含まれるテーブルで使用した場合です。

データの例

| Region | Year | Month | Sales |
| --- | --- | --- | --- |
| North | 2014 | May | 245 |
| North | 2014 | May | 347 |
| North | 2014 | June | 127 |
| South | 2014 | June | 645 |
| South | 2013 | May | 367 |
| South | 2013 | May | 221 |

インライン データを使用して、ソース データをロードします。次に、Region 項目、Year 項目、Month 項目から複合キーを作成する、先行する LOAD を追加します。

```
RegionSales:
LOAD *,
AutoNumber(Region&Year&Month) as RYMkey;

LOAD * INLINE
[ Region, Year, Month, Sales
North,	2014,	May,	245
North,	2014,	May,	347
North,	2014,	June,	127
South,	2014,	June,	645
South,	2013,	May, 367
South,	2013,	May,	221
];
```

この結果、テーブルは次のようになります。

結果テーブル

| Region | Year | Month | Sales | RYMkey |
| --- | --- | --- | --- | --- |
| North | 2014 | May | 245 | 1 |
| North | 2014 | May | 347 | 1 |
| North | 2014 | June | 127 | 2 |
| South | 2014 | June | 645 | 3 |
| South | 2013 | May | 367 | 4 |
| South | 2013 | May | 221 | 4 |

この例では、別のテーブルにリンクする必要がある場合、たとえば、文字列 "North2014May" の代わりに RYMkey の 1 を参照できます。

同様の方法で、Costs のソース テーブルをロードします。Region 項目、Year 項目、Month 項目は、autonumber 関数を使用しテーブルをリンクしてすでに複合キーを作成しているため、合成キーの作成を避けるために先行する LOAD から除外されます。

```
RegionCosts:
LOAD Costs,
AutoNumber(Region&Year&Month) as RYMkey;

LOAD * INLINE
[ Region, Year, Month, Costs
South,	2013,	May,	167
North,	2014,	May,	56
North,	2014,	June,	199
South,	2014,	June,	64
South,	2013,	May, 172
South,	2013,	May,	126
];
```

テーブル ビジュアライゼーションをシートに追加し、Region 項目、Year 項目、Month 項目、および Sales と Costs の Sum メジャーを追加できるようになりました。テーブルは次のようになります。

結果テーブル

| Region | Year | Month | Sum([Sales]) | Sum([Costs]) |
| --- | --- | --- | --- | --- |
| Totals | - | - | 1952 | 784 |
| North | 2014 | June | 127 | 199 |
| North | 2014 | May | 592 | 56 |
| South | 2014 | June | 645 | 64 |
| South | 2013 | May | 588 | 465 |

## 詳細を見る

* [autonumberhash128 スクリプト関数](https://help.qlik.com/ja-JP/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/CounterFunctions/autonumberhash128.htm)
* [autonumberhash256 スクリプト関数](https://help.qlik.com/ja-JP/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/CounterFunctions/autonumberhash256.htm)