Перейти к основному содержимому Перейти к дополнительному содержимому

Предшествующий оператор LOAD

Предшествующий оператор LOAD позволяет загружать таблицу одной операцией, но, тем не менее, определяют несколько последующих преобразований. По существу, именно оператор LOAD выполняет загрузку из нижеуказанных операторов LOAD или SELECT, не указывая классификатор источника, такой как From или Resident, который обычно указывается. Таким образом можно выстроить в столбик любое количество операторов LOAD. Сначала будет оценен самый нижний оператор, затем оператор над ним и так до самого верхнего оператора.

Тот же результат можно достичь с помощью оператора Resident, но в большинстве случаев с предшествующим оператором LOAD это будет быстрее.

Еще одним преимуществом предшествующего оператора load является возможность хранить вычисление в одном месте и использовать его в операторах LOAD, размещенных выше.

Примечание к информацииСледующие префиксы невозможно использовать вместе с предшествующим оператором LOAD:Join, Crosstable и Intervalmatch.

Пример 1: Преобразование данных, загруженных оператором SELECT

В случае загрузки данных из базы данных с помощью оператора SELECT нельзя использовать функции QlikView для интерпретации данных в операторе SELECT. В таком случае необходимо добавить оператор LOAD, в котором выполняется преобразование данных, над оператором SELECT.

В этом примере интерпретируется дата, сохраненная в виде строки, с помощью функции QlikView Date# в операторе LOAD. При этом предшествующий оператор SELECT используется в качестве исходного.

LOAD Date#(OrderDate,'YYYYMMDD') as OrderDate;
SQL SELECT OrderDate FROM … ;

Пример 2: Упрощение скрипта с помощью многократного использования вычислений

В этом примере вычисление в скрипте используется несколько раз:

LOAD ..., Age( FromDate + IterNo() – 1, BirthDate ) as Age, Date( FromDate + IterNo() – 1 ) as ReferenceDate Resident Policies While IterNo() <= ToDate - FromDate + 1 ;

Использовав это вычисление однажды, его можно использовать повторно в функции Age в предшествующем операторе LOAD:

LOAD ..., ReferenceDate, Age( ReferenceDate, BirthDate ) as Age; LOAD *, Date( FromDate + IterNo() – 1 ) as ReferenceDate Resident Policies While IterNo() <= ToDate - FromDate + 1 ;

Помогла ли вам эта страница?

Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!

Присоединяйтесь к программе модернизации аналитики

Remove banner from view

Модернизируйте ваши важные приложения QlikView без ущерба с помощью программы модернизации аналитики. Щелкните здесь для получения дополнительной информации или свяжитесь с нами: ampquestions@qlik.com