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:

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.

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.

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:

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:

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:

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ą:

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ą:

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.

dimensionality ( )

W przypadku tabeli przestawnej z trzema kolumnami wymiarów po lewej zwrócone będą następujące wartości:

3 dla wszystkich zwykłych komórek danych.

2 dla sum częściowych 1. poziomu i wpisów nierozwiniętych w 3. kolumnie.

1 dla sum częściowych 2. poziomu i wpisów rozwiniętych tylko w 1. kolumnie.

0 dla komórki z sumą końcową.

dimensionality ( )

secondarydimensionality ( )