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

Przykłady funkcji międzyrekordowych wykresu

Przykłady funkcji top

W podanych przykładach wykorzystano funkcję top, ale można je podobnie zastosować do funkcji bottom, first i last. Należy jednak pamiętać, że funkcje first i last dotyczą tylko tabel przestawnych.

Przykład 1:  

Przeanalizujmy poniższą tabelę prostą przedstawiającą użycie funkcji top w tabeli jednowymiarowej:

Example table image of one dimensional straight table with top function
Przykładowa tabela: Jednowymiarowa tabela prosta z funkcją top
Month sum(Val) top(sum(Val)) sum(Val) / top(sum(Val))
- 21 3 700%
1 3 3 100%
2 7 3 233%
3 11 3 367%

W przypadku jednego wymiaru funkcja top będzie zawsze odwoływać się do pierwszego wiersza danych tabeli (wiersz sumy nie jest uwzględniany).

Należy pamiętać, że wyrażenia, w których jest używana funkcja top, będą prawidłowo oceniane także w wierszu sumy, ponieważ wiersz sumy jest jednoznacznie powiązany z określonym segmentem kolumny, w tym przypadku z całą kolumną.

Przykład 2:  

Poniżej znajduje się dwuwymiarowa tabela prosta posortowana w pierwszej kolejności wg pola Grp.

Example table image of two dimensional straight table with total qualifier
Przykładowa tabela: Dwuwymiarowa tabela prosta z kwalifikatorem total
Month Grp sum(Val) top(sum(Val)) top(total sum(Val))
- - 21 - 1
1 A 1 1 1
2 A 3 1 1
3 A 5 1 1
1 B 2 2 1
2 B 4 2 1
3 B 6 2 1

Funkcja top bez kwalifikatora total zwróci teraz wyrażenie ocenione w górnym wierszu w obrębie najbardziej wewnętrznej grupy sortowania (w tym przypadku wymiaru Grp). Jedna wartość zostanie zwrócona dla Grp = A i jedna dla Grp = B.

Używając kwalifikatora total w przypadku wielowymiarowym, można ponownie odwołać się do bezwzględnego górnego wiersza tabeli z tą samą wartością zwracaną dla wszystkich wierszy. Wyrażenie będzie oczywiście ocenione dla segmentu kolumny obejmującego całą kolumnę.

Ocena wyrażenia z wykorzystaniem funkcji top bez kwalifikatora total zwróci NULL w wierszu sumy, ponieważ nie można go jednoznacznie powiązać z określonym segmentem kolumny.

Teraz przekształcimy powyższą tabelę prostą w tabelę przestawną z wszystkimi sumami aktywnymi.

Example table image of two dimensional pivot table with total qualifier
Przykładowa tabela: Dwuwymiarowa tabela przestawna z kwalifikatorem total
Month Grp sum(Val) top(sum(Val)) top(total sum(Val))
1 A 1 1 1
1 B 2 1 1
1 Suma 3 1 -
2 A 3 3 1
2 B 4 3 1
2 Suma 7 3 -
3 A 5 5 1
3 B 6 5 1
3 Suma 11 5 -
Suma - 21 - 1

Ocena wyrażenia z wykorzystaniem funkcji top bez kwalifikatora total zwróci NULL w wierszu sumy, ponieważ nie można go jednoznacznie powiązać z określonym segmentem kolumny. Jednakże dla każdego segmentu kolumny ocenione zostaną wszystkie sumy częściowe.

W przypadku wyrażenia z wykorzystaniem kwalifikatora total brak będzie wartości w sumach częściowych, ale zwróci ono wartość w wierszu sumy końcowej.

Przykład 3:  

Przeanalizujmy poniższą tabelę prostą posortowaną według pola Grp:

Example table image of Two dimensional straight table sorted by Grp
Przykładowa tabela: Dwuwymiarowa tabela prosta sortowana według Grp
Month Grp sum(Val) top(sum(Val)) sum(Val) / top(sum(Val))
- - 21 - -
1 A 1 1 100%
2 A 3 1 300%
3 A 5 1 500%
1 B 2 2 100%
2 B 4 2 200%
3 B 6 2 300%

Możemy kontynuować, zmieniając kolejność sortowania pól wewnętrznych, przez co wykres zostanie posortowany w pierwszej kolejności według pola Month. Tabela będzie teraz wyglądać następująco:

Example table image of Two dimensional straight table sorted by Month
Przykładowa tabela: Dwuwymiarowa tabela prosta sortowana według Month
Month Grp sum(Val) top(sum(Val)) sum(Val) / top(sum(Val))
- - 21 - -
1 A 1 1 100%
1 B 2 1 200%
2 A 3 3 100%
2 B 4 3 133%
3 A 5 5 100%
3 B 6 5 120%

Przykłady funkcji above

W podanych przykładach wykorzystano funkcję above, ale można je podobnie zastosować do funkcji below, before i after. Należy jednak pamiętać, że funkcje before i after dotyczą tylko tabel przestawnych.

Przykład 4:  

Przeanalizujmy poniższą tabelę prostą przedstawiającą użycie funkcji above w tabeli jednowymiarowej:

Example table image of one dimensional straight table with Above function
Przykładowa tabela: Jednowymiarowa tabela prosta z funkcją Above
Month sum(Val) above(sum(Val)) sum(Val) / above(sum(Val))
- 21 - -
1 3 - -
2 7 3 233%
3 11 7 157%

W trzeciej kolumnie znajduje się wyrażenie sum(Val) ocenione jeden wiersz powyżej wiersza bieżącego, co można potwierdzić poprzez porównanie wartości sum(val) w drugiej kolumnie. Funkcja above zwraca NULL w pierwszym wierszu, ponieważ nie ma wiersza powyżej, w którym można by ocenić wyrażenie. Funkcja above zawsze zwraca NULL we wszystkich wierszach sumy.

W czwartej kolumnie przedstawiono najbardziej typowe użycie tej funkcji, tzn. do obliczenia różnicy np. między różnymi okresami.

Przykład 5:  

Przeanalizujmy poniższą dwuwymiarową tabelę przestawną:

Example table image of two dimension pivot table and the effect of total qualifier
Przykładowa tabela: Dwuwymiarowa tabela przestawna z kwalifikatorem total
Grp Month sum(Val) above(sum(Val)) above(total sum(Val))
A 1 1 - -
A 2 3 1 1
A 3 5 3 3
A Suma 9 - -
B 1 2 - 5
B 2 4 2 2
B 3 6 4 4
B Suma 12 - -
Suma - 21 - -

Funkcja above bez kwalifikatora total (trzecia kolumna) będzie działać tylko w obrębie poszczególnych grup sortowania. W górnym wierszu poszczególnych segmentów kolumny będzie zwrócone NULL.

Po dodaniu kwalifikatora total (czwarta kolumna) cała kolumna będzie uznawana za jeden segment kolumny. Tylko w górnym wierszu będzie zwrócone NULL. Wszystkie wiersze sumy są ignorowane i zwracają NULL.

 

Przykłady funkcji RowNo i NoOfRows

W podanym przykładzie wykorzystano funkcje RowNo i NoOfRows, ale można go podobnie zastosować do funkcji ColumnNo i NoOfColumns. Należy jednak pamiętać, że funkcje ColumnNo i NoOfColumns dotyczą tylko tabel przestawnych.

Przykład 6:  

Przeanalizujmy poniższą dwuwymiarową tabelę przestawną:

Example table image of RowNo and NoOfRows functions
Przykładowa tabela: RowNo i funkcje NoOfRows
Month Grp RowNo() RowNo(total) NoOfRows() NoOfRows(total)
1 A 1 1 2 6
1 B 2 2 2 6
1 Suma 0 - 2 -
2 A 1 3 2 6
2 B 2 4 2 6
2 Suma 0 - 2 -
3 A 1 5 2 6
3 B 2 6 2 6
3 Suma 0 - 2 -
Suma - - 0 - 6
  • Kolumna 3 Funkcja RowNo zwróci numer wiersza w obrębie segmentu kolumny każdej grupy sortowania. W wierszach sum częściowych zwrócony będzie numer wiersza 0, ponieważ sumy te wyraźnie należą do określonego segmentu kolumny. W wierszu sumy końcowej zwrócone zostanie NULL.
  • Kolumna 4 Funkcja RowNo z kwalifikatorem total zwróci numer wiersza w obrębie całej kolumny. W wierszach sum częściowych zwrócone zostanie NULL. W wierszu sumy końcowej zwrócona będzie wartość 0.
  • Kolumna 5 Funkcja NoOfRows zwróci liczbę wierszy danych w obrębie segmentu kolumny każdej grupy sortowania. W wierszach sum częściowych zwrócona będzie ta sama liczba, co w wierszach danych. W wierszu sumy końcowej zwrócone zostanie NULL.
  • Kolumna 6 Funkcja NoOfRows z kwalifikatorem total zwróci liczbę wierszy danych w obrębie całej kolumny, która jest taka sama jak wartość zwrócona w wierszu sumy końcowej. W wierszach sum częściowych zwrócone zostanie NULL.

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