AutoNumber
Этот оператор создает уникальное целочисленное значение для каждого отдельного оцененного значения в поле, встречающегося во время выполнения скрипта.
Можно также использовать функцию autonumber — функция скрипта внутри оператора LOAD, но это имеет некоторые ограничения, если требуется оптимизированная загрузка. Можно создать оптимизированную загрузку, сначала загрузив данные из файла QVD, а затем используя оператор AutoNumber для преобразования значений в символьные ключи.
Синтаксис:
AutoNumber fieldlist [Using namespace] ]
Аргументы:
Аргумент | Описание |
---|---|
fieldlist |
Разделенный запятыми список полей, значения которых должны быть заменены символьным ключом. Можно использовать знаки подстановки ? и * в именах полей, чтобы включить все поля с совпадающими именами. Также можно использовать *, чтобы включить все поля. При использовании знаков подстановки имена полей необходимо заключать в кавычки. |
namespace |
Использовать namespace необязательно. Этот параметр можно использовать, если нужно создать пространство имен, в котором одинаковые значения в разных полях имеют один и тот же ключ. Если не использовать этот параметр, все поля будут иметь отдельный индекс ключа. |
Ограничения:
Когда в скрипте есть несколько операторов 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 .
Результирующая таблица будет выглядеть так:
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 |