# AutoNumber

此陳述式會針對在指令碼執行期間出現的每個相異的評估值，建立唯一的整數值。

您也可以使用 LOAD 陳述式中的 [autonumber - 指令碼函數](https://help.qlik.com/zh-TW/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/CounterFunctions/autonumber.htm) 函數，但若您想要使用最佳載入，這會有一些限制。您可以先從 QVD 檔案載入資料，以建立最佳載入，然後使用 AutoNumber 陳述式以將值轉換為符號鍵。

語法：

AutoNumber \*fieldlist [Using namespace] ]

引數：

引數

| 引數 | 描述 |
| --- | --- |
| \*欄位清單 | 以逗號分隔的欄位清單，在此值應被唯一整數值取代。<br><br>您可以在欄位名稱中使用萬用字元 ? 和 \*，以納入名稱符合的所有欄位。您也可以使用 \* 以納入所有欄位。您需要在使用萬用字元時引用欄位名稱。 |
| 命名空間 | 可選擇 Using 命名空間。若您想要建立命名空間，可以使用此選項，其中不同欄位中的相同值共用相同的金鑰。<br><br>若您不使用此選項，所有欄位都會有獨立的金鑰索引。 |

限制：

若您在指令碼中有數個 LOAD 陳述式，則需要在最終的 LOAD 陳述式之後置放 AutoNumber 陳述式。

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

#### 範例 - 含 AutoNumber 的指令碼

## 指令碼範例

在此範例中，首先以不含 AutoNumber 陳述式的方式載入資料。然後再新增 AutoNumber 陳述式以顯示效果。

### 範例中使用的資料

在資料載入編輯器中載入下列資料作為內嵌載入，以建立以下的指令碼範例。目前先忽略已註解的 AutoNumber 陳述式。

```
RegionSales:
LOAD *, 
Region &'|'& Year &'|'& Month as KeyToOtherTable
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
];
					
Budget:
LOAD Budget,  
Region &'|'& Year &'|'& Month as KeyToOtherTable
INLINE
[Region, Year, Month, Budget
North,  2014,   May,    200
North,  2014,   May,    350
North,  2014,   June,   150
South,  2014,   June,   500
South,  2013,   May,    300
South,  2013,   May,    200
];

//AutoNumber KeyToOtherTable;

```

如需更多關於使用內嵌載入的資訊，請參閱 [使用內嵌載入以載入資料](https://help.qlik.com/zh-TW/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm)。

### 建立視覺化

在 Qlik Sense 工作表中建立兩個表格視覺化。將 KeyToOtherTable、Region、Year、Month 和 Sales 作為維度新增至第一個表格。將 KeyToOtherTable、Region、Year、Month 和 Budget 作為維度新增至第二個表格。

### 結果

RegionSales 表格

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

Budget 表格

| KeyToOtherTable | Region | Year | Month | Budget |
| --- | --- | --- | --- | --- |
| North\|2014\|June | North | 2014 | June | 150 |
| North\|2014\|May | North | 2014 | May | 200 |
| North\|2014\|May | North | 2014 | May | 350 |
| South\|2013\|May | South | 2013 | May | 200 |
| South\|2013\|May | South | 2013 | May | 300 |
| South\|2014\|June | South | 2014 | June | 500 |

### 解釋

範例顯示連結兩個表格的複合欄位 KeyToOtherTable。未使用 AutoNumber。注意 KeyToOtherTable 值的長度。

### 新增 AutoNumber 陳述式

在載入指令碼中取消註解 AutoNumber 陳述式：

```
AutoNumber KeyToOtherTable;
```

### 結果

RegionSales 表格

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

Budget 表格

| KeyToOtherTable | Region | Year | Month | Budget |
| --- | --- | --- | --- | --- |
| 1 | North | 2014 | June | 150 |
| 1 | North | 2014 | May | 200 |
| 2 | North | 2014 | May | 350 |
| 3 | South | 2013 | May | 200 |
| 4 | South | 2013 | May | 300 |
| 4 | South | 2014 | June | 500 |

### 解釋

已使用唯一整數值取代 KeyToOtherTable 欄位值，因此，已減少欄位值的長度，而能節省記憶體。兩個表格中的索引鍵欄位受到 AutoNumber 影響，並且表格保持連結。該範例僅供示範之用，在處理含大量列的表格時具有意義。