Функции между записями в Qlik Sense с синтаксисом и примером
Мы используем функции между записями, когда требуются значения между записями, то есть значения разных или ранее загруженных записей. Когда мы ссылаемся на внутренние записи в скрипте загрузки данных, мы ссылаемся на ранее загруженные записи. А в случае взаимных записей в диаграммах используется ссылка на другое значение из другого набора данных.
Функции между записями в Qlik Sense
i. Строковые функции
Итак, есть 5 строковых функций в функциях между записями в Qlik Sense: Above, Lower, Bottom, Top, NoOfRows. Давайте подробно разберем их
Функции между записями в Qlik Sense – Строковые функции
a. Above
Эта функция возвращает значение, которое находится точно над текущей строкой и в том же сегменте столбца или поля. Вы можете установить количество строк над текущей строкой, из которой хотите получить значение, используя значение смещения.
Синтаксис:
Above([TOTAL] expr [ , offset [,count]])
где expr – это измерение или имя поля, из которого мы хотим получить значения записи.
Offset – это параметр, который устанавливает количество строк, на которые должны подниматься функции по сравнению с текущей строкой. По умолчанию установлено значение 1, при котором значение выбирается из одной строки выше текущей. Если вы указываете значение смещения как отрицательное, тогда значения выбираются из строк ниже текущей строки (работает как функция «Below»).
Параметры «Count» используются для возврата количества значений, встречающихся в каждой строке при переходе к нужной строке.
TOTAL – это квалификатор. Когда он используется (в одномерной таблице), возвращает текущее значение, равное всем значениям во всем столбце.
Например, у нас есть значения продаж для группы из 4 клиентов. Используя функцию Above(), мы создадим новое поле, в котором будут извлекаться значения из одной строки выше, а в другом столбце будут вычтены два значения, показывающие разницу продаж между двумя покупателями.
Customer |
Sales |
Above(Sales) |
Sales-Above(Sales) |
Rebecca |
567 |
– |
– |
Ethan |
680 |
567 |
113 |
Joshua |
764 |
680 |
84 |
Mathew |
860 |
764 |
96 |
b. Below
Эта функция возвращает значение, которое находится точно под текущей строкой и в том же сегменте столбца или поля. Вы можете установить количество строк под текущей строкой, из которой вы хотите получить значение, используя значение смещения.
Синтаксис:
Below([TOTAL] expr [ , offset [,count]])
где expr – это измерение или имя поля, из которого мы хотим получить значения записи.
Offset – это параметр, который устанавливает количество строк, на которые функции должны сходить вниз от текущей строки. По умолчанию установлено значение 1, при котором значение выбирается из одной строки чуть ниже текущей. Если вы указываете значение смещения как отрицательное значение, тогда значения выбираются из строк над текущей строкой (работает как функция Above).
Параметры Count используются для возврата количества значений, встречающихся в каждой строке при переходе к нужной строке.
TOTAL – это квалификатор. Когда он используется (в одномерной таблице), возвращает текущее значение, равное всем значениям во всем столбце.
Например, у нас есть значения продаж для группы из 4 клиентов. Используя функцию Below(), мы создадим новое поле, в которое будут извлекаться значения из одной строки вниз, а в другой столбец будут добавлены два значения, показывающие общие продажи двух клиентов.
Customer |
Sales |
Below(Sales) |
Sales+Below(Sales) |
Rebecca |
567 |
680 |
1247 |
Ethan |
680 |
746 |
1426 |
Joshua |
764 |
860 |
1624 |
Mathew |
860 |
– |
– |
c. Bottom
Функция bottom() возвращает самое нижнее значение из строк соответствующего столбца.
Синтаксис:
Bottom([TOTAL] expr [ , offset [,count ]])
где expr – это измерение или имя поля, из которого мы хотим получить значения записи.
Offset – это параметр, с помощью которого вы можете получить значение на n строк выше значения нижней строки. Если это значение отрицательное, то функция работает как функция Top().
Параметры Count используются для возврата количества значений, встречающихся в каждой строке при переходе к нужной строке.
TOTAL – это квалификатор. Когда он используется (в одномерной таблице), возвращает текущее значение, равное всем значениям во всем столбце.
Например, выражение Bottom(Sales) вернуло значение 860 из самой нижней строки.
Customer |
Sales |
Bottom(Sales) |
Sales+Below(Sales) |
Rebecca |
567 |
860 |
1427 |
Ethan |
680 |
860 |
1540 |
Joshua |
764 |
860 |
1624 |
Mathew |
860 |
860 |
1720 |
d. Top
Функция top() возвращает значение из самой верхней строки столбца. Эта функция прямо противоположна функции Bottom().
Синтаксис:
Top([TOTAL] expr [ , offset [,count ]])
где expr – это измерение или имя поля, из которого мы хотим получить значения записи.
Offset – это параметр, с помощью которого вы можете получить значение на n строк ниже значения верхней строки. Если это значение отрицательное, то функция работает как функция Bottom().
Параметры Count используются для возврата количества значений, встречающихся в каждой строке при переходе к нужной строке.
TOTAL – это квалификатор. Когда он используется (в одномерной таблице), возвращает текущее значение, равное всем значениям во всем столбце.
Например, выражение Top(Sales) вернуло значение 567 из самой верхней строки.
Customer |
Sales |
Top(Sales) |
Sales+Top(Sales) |
Rebecca |
567 |
567 |
1134 |
Ethan |
680 |
567 |
1247 |
Joshua |
764 |
567 |
1331 |
Mathew |
860 |
567 |
1427 |
e. NoOfRows
Эта функция возвращает общее количество строк, присутствующих в определенном столбце или поле в таблице.
Синтаксис:
NoOfRows([TOTAL])
где, TOTAL – это квалификатор. Когда он используется (в одномерной таблице), то возвращает текущее значение, равное всем значениям во всем столбце.
Например, если в поле с именем «Клиент» есть 50 строк, каждая из которых имеет новое имя клиента, то выражение NoOfRows() вернет 50, если текущее поле – «Клиенты».
ii. Функции столбца
Функции между строк в Qlik Sense - Функции столбца
a. Column
Функция Column() возвращает значения, содержащиеся в столбце, используя номер столбца. Эта функция учитывает только столбцы или поля мер, а измерения полностью игнорируются.
Синтаксис:
Column(ColumnNo)
где ColumnNo – это номер столбца меры, который вы хотите использовать.
Например,
Customer |
Year |
Order Value |
Total Sales Value |
%Sales |
Rebecca |
2017 |
150 |
505 |
29.70 |
Ethan |
2017 |
64 |
505 |
12.67 |
Joshua |
2017 |
81 |
505 |
16.04 |
Mathew |
2017 |
50 |
505 |
9.90 |
b. Dimensionality
Эта функция возвращает размерность строки, то есть общее количество измерений, присутствующих в строке. С помощью этой функции вы можете выполнять несколько операций, так как это удобный способ подсчитать количество столбцов, являющихся измерениями. Эту функцию можно использовать только в графиках.
Синтаксис:
Dimensionality( )
Например, если в строке есть три сегмента из трех столбцов, которые представляют собой такие измерения, как «Клиент», «Продукт» и «Город», эта функция вернет 3.
c. Secondarydimensionality
Эта функция используется для оценки размерности строки в горизонтальной сводной таблице. Она работает аналогично функции Dimensality() и не включает значения агрегирования. Эта функция возвращает 0, если она используется где-либо, кроме сводных таблиц в Qlik Sense.