Функции таблиц Qlik Sense с синтаксисом
1. Цель
Табличные функции используются для определенных операций с таблицами, которые текущий оператор LOAD читает или оценивает. Эти функции делают управление полями и значениями данных в таблице простым и удобным, особенно когда обрабатывается большое количество данных в одном скрипте загрузки данных.
Итак, давайте рассмотрим табличные функции Qlik Sense.
Функции таблиц Qlik Sense с синтаксисом
2. Функции таблицы Qlik Sense
i. Функция FieldName()
Эта функция используется, когда вы хотите вернуть имя поля из ранее загруженной таблицы. Вам нужно будет указать имя таблицы, если вы используете эту функцию вне оператора LOAD, в который загружена эта конкретная таблица. Но если вы используете эту функцию в фрагменте кода, который имеет соответствующую таблицу в операторе LOAD, вы не должны указывать имя таблицы, поскольку оно будет автоматически принято логикой системы.
Синтаксис функции FieldName:
FieldName(field_number ,table_name)
где field_number – номер поля в таблице.
table_name – имя таблицы, в которой функция будет находить имя поля по номеру поля.
Например, в приведенном ниже фрагменте кода функция FieldName используется для вызова второго поля, то есть поля атрибута в операторе сценария. Вот пример использования этой функции в том же операторе LOAD, что и таблица.
LOAD * FieldName(2) Inline [ AttributeCode, Attribute R, Red Y, Yellow B, Blue C, Cotton P, Polyester S, Small M, Medium L, Large ];
Если вы хотите использовать эту функцию из того же оператора LOAD, система будет работать так, как указано ниже. Это назначает функцию как переменную x и вызывает имя поля из tab1 в четвертой позиции.
LET x = FieldName(4,'tab1');
ii. Функция FieldNumber()
Функция FieldNumber () возвращает номер поля в таблице. Эту функцию можно использовать либо в сценарии LOAD, где загружается таблица, либо вне ее, вызывая поле и таблицу, в которых находится поле.
Синтаксис функции FieldNumber в Qlik Sense:
FieldNumber(field_name ,table_name)
где field_name – имя поля, номер которого вы хотите узнать. table_name – имя таблицы, которая содержит соответствующее поле.
Например
LET x = FieldNumber('Customer','Sales');
Предположим, имя поле «Customer» (Клиент), упомянутое в приведенном выше примере кода, является вторым полем в таблице «Sales» (Продажи). Тогда эта функция вернет 2. Обратите внимание, что мы упомянули имя таблицы, потому что мы используем его из оператора LOAD, загружающего таблицу «Sales» (Продажи). Хотя, если вы используете эту функцию в операторе LOAD для таблицы «Sales» (Продажи), упоминание имени в функции не требуется. Если в таблице нет такого поля, как вы упомянули в функции, возвращается «0».
iii. Функция NoOfFields()
Эта функция используется для возврата общего количества полей в таблице.
NoOfFields(table_name)
где вместо параметра table_name вы должны ввести имя таблицы, количество полей которой вы хотите узнать. Но, если вы используете эту функцию в операторе LOAD, в который загружена соответствующая таблица, имя таблицы в качестве параметра функции не требуется.
Например, если в таблице с именем «Sales» (Продажи) всего 8 полей, мы будем использовать функцию NoOfFields () как,
LET x = NoOfFields(‘Sales’);
Возвращает «8» как значение переменной x.
iv. Функция NoOfRows()
Эта функция используется для возврата общего количества строк в таблице.
Синтаксис функции NoOfRows в Qlik Sense:
NoOfRows(table_name)
где table_name – имя таблицы, количество строк которой мы хотим узнать.
Например, если есть таблица с именем «Sales» (Продажи) и в ней 80 строк. Затем, используя эту функцию, вы можете получить это значение в результате.
LET x= NoOfRows(‘Sales’);
Возвращает «80» как значение, равное «x».
v. Функция NoOfTables()
Функция возвращает общее количество таблиц, загруженных в операторе LOAD.
Синтаксис функции NoOfTables:
NoOfTables()
Предположим, вы загрузили 10 разных таблиц в оператор LOAD, тогда эта функция вернет «10».
vi. Функция TableName()
Функция возвращает имя таблицы, соответствующее уникальному номеру таблицы.
Синтаксис функции TableName в Qlik Sense:
TableName(table_number)
где table_number – n из n-го числа таблиц, загруженных в конкретный оператор LOAD.
vii. Функция TableNumber()
Функция возвращает номер, присвоенный конкретной таблице в операторе LOAD как часть сценария. В каждом операторе LOAD таблицы пронумерованы, первая таблица – 0, вторая таблица – 1, и так далее.
Синтаксис функции TableNumber:
TableNumber(table_name)
3. Заключение
Итак, мы можем использовать эти табличные функции Qlik Sense в скрипте загрузки данных Qlik Sense. Только функцию NoOfRows мы можем использовать в качестве функции диаграммы. Табличные функции очень полезны, когда вы хотите управлять всеми таблицами, загруженными в ваш скрипт, когда у вас есть вся необходимая информация, такая как общее количество таблиц, имена таблиц, номера таблиц, количество строк и т. д.