Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

Previous — funkcja skryptu

Funkcja Previous() wyszukuje wartość wyrażenia expr przy użyciu danych z poprzedniego rekordu wejściowego. W przypadku pierwszego wiersza tabeli wewnętrznej funkcja zwróci wartość NULL.

Składnia:  

Previous(expr)

Typ zwracanych danych: podwójny

Argumenty:  

Argumenty Previous
Argument Opis
expr Wyrażenie lub pole zawierające mierzone dane.

Wyrażenie może zawierać zagnieżdżone funkcje previous() w celu uzyskiwania dostępu do bardziej odległych rekordów. Dane są pobierane bezpośrednio ze źródła danych wejściowych, co umożliwia odwoływanie się również do pól, które nie zostały załadowane do aplikacji QlikView (nie zostały zapisane w asocjacyjnej bazie danych programu).

Ograniczenia:  

W przypadku pierwszego rekordu tabeli wewnętrznej funkcja zwraca wartość NULL.

Przykład 1:  

Sales2013:

Load *, (Sales - Previous(Sales) )as Increase Inline [

Month|Sales

1|12

2|13

3|15

4|17

5|21

6|21

7|22

8|23

9|32

10|35

11|40

12|41

] (delimiter is '|');

 

Korzystając z funkcji Previous() w instrukcji Load, możemy porównać bieżącą wartość Sales z poprzednią wartością i użyć jej w trzecim polu, Increase.

Wyniki przykładu 1
Month Sales Increase
1 12 -
2 13 1
3 15 2
4 17 2
5 21 4
6 21 0
7 22 1
8 23 1
9 32 9
10 35 3
11 40 5
12 41 1

Przykład 2:  

Sales2013:

Load * Inline [

Month|Sales

1|12

2|13

3|15

4|17

5|21

6|21

7|22

8|23

9|32

10|35

11|40

12|41

] (delimiter is '|');

 

Sales:

NoConcatenate Load *, (Sales - Previous(Sales) )as Increase Resident Sales2013 where Month > 6;

 

Drop Table Sales2013;

 

W tym przykładzie wykluczamy rekordy, w których wartość Month wynosi 6 lub mniej. W celu wykluczenia używamy klauzuli WHERE. Dzięki temu możliwe jest użycie argumentu Previous(), ponieważ funkcja może się odwoływać do danych wykluczonych z ładowania.

W tym przypadku obliczenie Increase dotyczące Month=7 odwołuje się do wartości Sales dla Month=6, co zostało wykluczone z ładowania.

Wyniki przykładu 2
Month Sales Increase
7 22 1
8 23 1
9 32 9
10 35 3
11 40 5
12 41 1

Dowiedz się więcej

 

Czy ta strona była pomocna?

Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać, co możemy poprawić!

Dołącz do Programu Modernizacji Analityki

Remove banner from view

Przeprowadź modernizację bez szkody dla Twoich cennych aplikacji QlikView za pomocą programu Analytics Modernization Program. Kliknij tutaj aby uzyskać więcej informacji lub skontaktuj się z nami: ampquestions@qlik.com