# AutoNumber

Этот оператор создает уникальное целочисленное значение для каждого отдельного оцененного значения в поле, встречающегося во время выполнения скрипта.

Можно также использовать функцию [autonumber — функция скрипта](https://help.qlik.com/ru-RU/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/CounterFunctions/autonumber.htm) внутри оператора LOAD, но это имеет некоторые ограничения, если требуется оптимизированная загрузка. Можно создать оптимизированную загрузку, сначала загрузив данные из файла QVD, а затем используя оператор AutoNumber для преобразования значений в символьные ключи.

Синтаксис:

AutoNumber fieldlist [Using namespace] ]

Аргументы:

Аргументы

| Аргумент | Описание |
| --- | --- |
| fieldlist | Разделенный запятыми список полей, значения которых должны быть заменены символьным ключом.<br><br>Можно использовать знаки подстановки ? и \* в именах полей, чтобы включить все поля с совпадающими именами. Также можно использовать \*, чтобы включить все поля. При использовании знаков подстановки имена полей необходимо заключать в кавычки. |
| namespace | Использовать namespace необязательно. Этот параметр можно использовать, если нужно создать пространство имен, в котором одинаковые значения в разных полях имеют один и тот же ключ.<br><br>Если не использовать этот параметр, все поля будут иметь отдельный индекс ключа. |

Ограничения:

Когда в скрипте есть несколько операторов LOAD, необходимо поместить оператор AutoNumber после последнего оператора LOAD.

Пример:

В этом примере мы заменяем значения полей на ключи таблицы символов с помощью оператора 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 |

Исходные данные загружаются с помощью встроенных данных. Затем добавляется оператор AutoNumber с полями Region, Year и Month .

```
RegionSales: 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 ];  AutoNumber Region, Year, Month;  
```

Результирующая таблица будет выглядеть так:

Таблица результатов

| Region | Year | Month | Sales |
| --- | --- | --- | --- |
| 1 | 2 | 1 | 245 |
| 1 | 2 | 1 | 347 |
| 1 | 2 | 2 | 127 |
| 2 | 2 | 2 | 645 |
| 2 | 1 | 1 | 367 |
| 2 | 1 | 1 | 221 |