QlikView - функция ранжирования

В Rank()Функция в QlikView используется для отображения ранга значений в поле, а также для возврата строк с определенным значением ранга. Таким образом, он используется в двух сценариях. Первый сценарий заключается в диаграммах QlikView для отображения рангов значений в поле, а второй - в функции агрегирования для отображения только строк, которые имеют определенное значение ранга.

Входные данные

Данные, использованные в примерах, описывающих функцию Rank, приведены ниже. Вы можете сохранить его как файл .csv по пути в вашей системе, где он будет доступен QlikView.

Product_Id,Product_Line,Product_category,Quantity,Value
1,Sporting Goods,Outdoor Recreation,12,5642
2,Food, Beverages & Tobacco,38,2514
3,Apparel & Accessories,Clothing,54,2365
4,Apparel & Accessories,Costumes & Accessories,29,4487
5,Sporting Goods,Athletics,11,812
6,Health & Beauty,Personal Care,21,6912
7,Arts & Entertainment,Hobbies & Creative Arts,58,5201
8,Arts & Entertainment,Paintings,73,8451
9,Arts & Entertainment,Musical Instruments,41,1245
10,Hardware,Tool Accessories,2,456
11,Home & Garden,Bathroom Accessories,36,241
12,Food,Drinks,54,1247
13,Home & Garden,Lawn & Garden,29,5462
14,Office Supplies,Presentation Supplies,22,577
15,Hardware,Blocks,53,548
16,Baby & Toddler,Diapering,19,1247
17,Baby & Toddler,Toys,9,257
18,Home & Garden,Pipes,81,1241
19,Office Supplies,Display Board,29,2177

Загрузить скрипт

Приведенные выше данные загружаются в память QlikView с помощью редактора скриптов. Откройте редактор сценариев из меню Файл или нажмитеControl+E. ВыбратьTable Files вариант из Data from Files tabи найдите файл, содержащий вышеуказанные данные. НажмитеOK и нажмите Control+R для загрузки данных в память QlikView.

Создание диаграммы с помощью функции Rank ()

Затем мы следуем инструкциям, приведенным ниже, чтобы создать диаграмму, которая показывает рейтинг поданных Value описано в отношении измерения Product_Line.

Выберите тип диаграммы

Щелкните Мастер диаграмм и выберите опцию straight tableкак тип диаграммы. НажмитеNext.

Выберите размер диаграммы

Из First Dimensionв раскрывающемся списке выберите Product_Line в качестве измерения. НажмитеNext.

Определите выражение диаграммы

В поле настраиваемого выражения укажите выражение ранга, как показано ниже. Здесь мы рассматриваем числовое поле с именемValue, который представляет собой значение продаж для каждой категории в каждой линейке продуктов. НажмитеNext.

Отображение диаграммы

При нажатии кнопки «Готово» на предыдущем шаге появляется следующая диаграмма, которая показывает рейтинг стоимости продаж каждой линейки продуктов.

Использование агрегатной функции с рангом

Агрегатные функции, такие как - max, min и т. Д., Могут принимать ранг в качестве аргумента для возврата строк, удовлетворяющих определенным значениям ранга. Мы считаем, что следующее выражение отсутствует в редакторе сценариев, что даст строки с самыми высокими продажами по каждой линейке продуктов.

# Load the records with highest sales value for each product line.
LOAD Product_Line, 
     max(Value,1)
FROM
[E:\Qlikview\data\product_sales.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq)
group by Product_Line;

Создание объекта листа

Давайте создадим Table Boxлист, чтобы показать данные, сгенерированные указанным выше скриптом. Зайти в менюLayout → New Sheet Object → Table Box. Появляется следующее окно, в котором мы упоминаем заголовок таблицы и выбираем необходимые поля для отображения. При нажатии кнопки ОК данные из CSV-файла отображаются в поле таблицы QlikView, как показано ниже.