Префиксы скрипта
Префиксы можно использовать с соответствующими обычными операторами, но не с операторами управления. Тем не менее префиксы when и unless можно использовать в качестве суффиксов с некоторыми выражениями определенных операторов управления.
Все ключевые слова скрипта можно вводить в любой комбинации символов в нижнем и верхнем регистре. В именах полей и переменных, используемых в операторах, учитывается регистр.
Пользуйтесь информацией из раскрывающегося списка по каждой функции, чтобы увидеть краткое описание и синтаксис каждой функции. Дополнительную информацию можно получить, если щелкнуть имя функции в описании синтаксиса.
Префикс Add может быть добавлен к любому оператору LOAD или SELECT в скрипте для указания, что он должен добавлять записи в другую таблицу. Он также указывает, что этот оператор следует выполнять в частичной перезагрузке. Префикс Add может также использоваться в операторе Map.
Add [only] [Concatenate[(tablename )]] (loadstatement | selectstatement)
Add [ Only ] mapstatement
Файлы QVD могут создаваться и обслуживаться автоматически посредством префикса buffer. Этот префикс может использоваться на большинстве операторов LOAD и SELECT в скрипте. Он указывает на то, что файлы QVD используются для кэширования/буферизации результата оператора.
Buffer[(option [ , option])] ( loadstatement | selectstatement )
option::= incremental | stale [after] amount [(days | hours)]
Если для двух таблиц необходимо выполнить объединение, и они имеют разные наборы полей, объединение двух таблиц может быть выполнено принудительно с помощью префикса Concatenate.
concatenate[ (tablename ) ] ( loadstatement | selectstatement )
Префикс загрузки crosstable используется для транспонирования структурированных данных «перекрестной таблицы» или «сводной таблицы». Данные, структурированные таким образом, обычно встречаются при работе с такими источниками, как электронные таблицы. Результатом и целью префикса загрузки crosstable является транспонирование таких структур в эквивалент обычной столбцовой таблицы, поскольку эта структура обычно лучше подходит для анализа в Qlik Sense.
crosstable (attribute field name, data field name [ , n ] ) ( loadstatement | selectstatement )
Префикс First операторов LOAD или SELECT (SQL) используется для загрузки заданного максимального числа записей из таблицы источника данных.
First n( loadstatement | selectstatement )
Префикс загрузки Generic позволяет преобразовывать смоделированные данные типа «объект-атрибут-значение» (EAV) в традиционную нормализованную структуру реляционной таблицы. Моделирование EAV также называют «обобщенным моделированием данных» или «открытой схемой».
Generic ( loadstatement | selectstatement )
Префикс hierarchy используется для преобразования иерархической таблицы в полезную таблицу модели данных Qlik Sense. Его можно поставить перед оператором LOAD или SELECT. Он будет использовать результат оператора загрузки в качестве ввода для преобразования таблицы.
Hierarchy (NodeID, ParentID, NodeName, [ParentName], [PathSource], [PathName], [PathDelimiter], [Depth])(loadstatement | selectstatement)
Префикс используется для преобразования иерархической таблицы в полезную таблицу модели данных Qlik Sense. Его можно поставить перед оператором LOAD или SELECT. Он будет использовать результат оператора загрузки в качестве ввода для преобразования таблицы.
HierarchyBelongsTo (NodeID, ParentID, NodeName, AncestorID, AncestorName, [DepthDiff])(loadstatement | selectstatement)
Перед префиксами join и keep может стоять префикс inner.
Если этот префикс используется перед join, то он указывает, что необходимо выполнить внутреннее объединение. Результирующая таблица, таким образом, будет содержать только комбинации значений полей из таблиц исходных данных с представлением связанных значений полей в обеих таблицах. Если этот префикс используется перед keep, он указывает, что обе таблицы с исходными данными следует уменьшить до области взаимного пересечения, прежде чем они смогут быть сохранены в программе Qlik Sense.
.Inner ( Join | Keep) [ (tablename) ](loadstatement |selectstatement )
Префикс IntervalMatch используется для создания таблиц сравнения дискретных числовых значений с одним или несколькими числовыми интервалами, а также сравнения значений с одним или несколькими дополнительными ключами.
IntervalMatch (matchfield)(loadstatement | selectstatement )
IntervalMatch (matchfield,keyfield1 [ , keyfield2, ... keyfield5 ] ) (loadstatement | selectstatement )
Префикс join объединяет загруженную таблицу с существующей таблицей, для которой задано имя, или с последней созданной таблицей данных.
[Inner | Outer | Left | Right ] Join [ (tablename ) ]( loadstatement | selectstatement )
Префикс keep подобен префиксу join. Также как префикс join, этот префикс сравнивает загруженную таблицу с существующей таблицей, для которой задано имя, или с последней созданной таблицей данных, но вместо объединения загруженной таблицы с существующей он позволяет сократить одну или обе таблицы до сохранения в программе Qlik Sense путем пересечения данных таблиц. Выполняемое сравнение аналогично натуральному объединению по всем общим полям, т. е. выполняется так же, как и при соответствующем объединении. Однако две таблицы не соединяются и сохраняются в программе Qlik Sense в виде двух отдельных таблиц с заданными именами.
(Inner | Left | Right) Keep [(tablename ) ]( loadstatement | selectstatement )
Перед префиксами Join и Keep может стоять префикс left.
Если этот префикс используется перед join, то он указывает, что необходимо выполнить левое объединение. Результирующая таблица будет содержать только комбинации значений полей из таблиц исходных данных с представлением связанных значений полей в первой таблице. Если этот префикс используется перед префиксом keep, он указывает, что вторую таблицу с исходными данными следует уменьшить до области взаимного пересечения с первой таблицей, прежде чем они смогут быть сохранены в программе Qlik Sense.
Left ( Join | Keep) [ (tablename) ](loadstatement |selectstatement )
Префикс mapping используется для создания таблицы сопоставления, которую можно использовать, например, для замены значений полей и имен полей в ходе выполнения скрипта.
Mapping ( loadstatement | selectstatement )
Префикс Merge может быть добавлен к любому оператору LOAD или SELECT в скрипте для указания, что загруженная таблица должна быть объединена с другой таблицей. Он также указывает, что этот оператор следует выполнять в частичной перезагрузке.
Merge [only] [(SequenceNoField [, SequenceNoVar])] On ListOfKeys [Concatenate [(TableName)]] (loadstatement | selectstatement)
Префикс NoConcatenate определяет, что две загруженные таблицы с идентичными наборами полей будут обрабатываться как две отдельные внутренние таблицы вместо автоматического объединения.
NoConcatenate( loadstatement | selectstatement )
Для указания внешнего объединения перед явным префиксом Join может стоять префикс Outer. При внешнем объединении создаются все возможные комбинации двух таблиц. Результирующая таблица, таким образом, будет содержать комбинации значений полей из таблиц исходных данных с представлением связанных значений полей в одной или обеих таблицах. Ключевое слово Outer является дополнительным. Это тип объединения по умолчанию, которое используется, когда не указан префикс join.
Outer Join [ (tablename) ](loadstatement |selectstatement )
Полная перезагрузка всегда начинается с удаления всех таблиц в существующей модели данных, после чего выполняется скрипт загрузки.
Частичная перезагрузка этого не делает. Вместо этого все таблицы в модели данных сохраняются, и затем выполняются только операторы Load и Select, которым предшествует префикс Add, Merge или Replace. Другие таблицы данных не затрагиваются командой. Аргумент only обозначает, что оператор должен быть выполнен только во время частичных перезагрузок и должен быть проигнорирован во время полных перезагрузок. В следующей таблице подводится итог выполнения оператора для частичных или полных перезагрузок.
Префикс Replace может быть добавлен к любому оператору LOAD или SELECT в скрипте для указания, что загруженная таблица должна заменить другую таблицу. Он также указывает, что этот оператор следует выполнять в частичной перезагрузке. Префикс Replace может также использоваться в операторе Map.
Replace [only] [Concatenate[(tablename) ]] (loadstatement | selectstatement)
Replace [only] mapstatement
Перед префиксами Join и Keep может стоять префикс right.
Если этот префикс используется перед join, то он указывает, что необходимо выполнить правое объединение. Результирующая таблица будет содержать только комбинации значений полей из таблиц исходных данных с представлением связанных значений полей во второй таблице. Если этот префикс используется перед префиксом keep, он указывает, что первую таблицу с исходными данными следует уменьшить до области взаимного пересечения со второй таблицей, прежде чем они смогут быть сохранены в программе Qlik Sense.
Right (Join | Keep) [(tablename)](loadstatement |selectstatement )
Префикс sample операторов LOAD или SELECT используется для загрузки произвольного образца записей из источника данных.
Sample p ( loadstatement | selectstatement )
Таблицы, содержащие связи между записями, можно загрузить с помощью префикса semantic. Это могут быть, например, рекурсивные ссылки в пределах таблицы, где одна запись указывает на другую, такую как родительская, та, которой она принадлежит, или предшествующая.
Semantic ( loadstatement | selectstatement)
Префикс и суффикс unless используется для создания условного предложения, определяющего вычисление или невычисление оператора либо условия «exit». Это короткое утверждение можно использовать вместо полного оператора if..end if.
(Unless condition statement | exitstatement Unless condition )
Префикс и суффикс when используется для создания условного предложения, определяющего исполнение или неисполнение оператора либо условия «exit». Это короткое утверждение можно использовать вместо полного оператора if..end if.
( When condition statement | exitstatement when condition )