Как заменить for..loop на больших данных (около миллиона строк) другим способом в смысле qlik
У меня есть большие данные о миллионах строк. Я должен сгенерировать поле, которое должно зациклить все строки в моей таблице данных. Этот цикл снижает производительность и делает ее неэффективной.
Так есть ли способ или решение для этого, особенно в Qlik Sense?
Пример структуры выглядит следующим образом:
FOR Each a in FieldValueList('employee') ~~~~ about 1 million rows
For i = 1 to $(vdate) ~~~~ about 3 month, equivalent 90 days
find max and append to a table....
Next i
Next a;
Спасибо
1 ответ
Более быстрый способ сделать это должен быть:
- создать таблицу из диапазона дат, используя цикл for (должно быть только 90 циклов (на 90 дней), поэтому очень быстро)
- загрузить в поле сотрудника
- используйте JOIN, чтобы связать таблицу дат с таблицей, содержащей поле сотрудника.
Выражение соединения будет примерно таким:
// do everything else before here
join (Employees) // assumes table called employees
load * resident [Employee dates] // assumes table holding dates called Employee dates
// clean up
drop table [Employee dates];
Надеюсь это поможет.
прут