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

RangeAvg — funkcja skryptu i funkcja wykresu

Funkcja RangeAvg() zwraca średnią wartość z zakresu. Argumentem wejściowym funkcji może być zakres wartości lub wyrażenie.

Składnia:  

RangeAvg(first_expr[, Expression])

Typ zwracanych danych: numeric

Argumenty:  

Argumenty tej funkcji mogą zawierać funkcje międzywierszowe, które same zwracają listę wartości.

Argumenty
Argument Opisu
first_expr Wyrażenie lub pole zawierające mierzone dane.
Expression Opcjonalne wyrażenia lub pola zawierające mierzony zakres danych.

Ograniczenia:  

Jeśli nie zostanie znaleziona żadna wartość liczbowa, zostanie zwrócona wartość NULL.

Przykłady i wyniki:  

Przykłady skryptów
Przykłady Wyniki
RangeAvg (1,2,4)

Zwraca wartość 2,33333333

RangeAvg (1,'xyz') Zwraca wartość 1
RangeAvg (null( ), 'abc') Zwraca wartość NULL

Przykład:  

Dodaj skrypt przykładowy do aplikacji i uruchom ją. Aby zobaczyć wynik, dodaj do arkusza w swojej aplikacji pola wyszczególnione w kolumnie wyników.

RangeTab3:

LOAD recno() as RangeID, RangeAvg(Field1,Field2,Field3) as MyRangeAvg INLINE [

Field1, Field2, Field3

10,5,6

2,3,7

8,2,8

18,11,9

5,5,9

9,4,2

];

Tabela wynikowa przedstawia zwrócone wartości MyRangeAvg dla każdego z rekordów w tabeli.

Tabela wynikowa
RangeID MyRangeAvg
1 7
2 4
3 6
4 12.666
5 6.333
6 5

Przykład z wyrażeniem:

RangeAvg (Above(MyField),0,3))

Zwraca średnią kroczącą wyniku zakresu trzech wartości z kolumny MyField obliczaną dla bieżącego wiersza oraz dwóch wierszy powyżej niego. Jeśli trzeci argument ma wartość 3, funkcja Above() zwraca trzy wartości (o ile istnieje wystarczająca liczba wierszy powyżej), które stanowią dane wejściowe dla funkcji RangeAvg().

Dane zastosowane w przykładach:

WskazówkaAby przykład działał zgodnie z oczekiwaniami, wyłącz sortowanie pola MyField.
Dane przykładowe
MyField RangeAvg (Above(MyField,0,3)) Comments
10 10 Jest to najwyższy wiersz, zakres obejmuje tylko jedną wartość.
2 6 Nad tym wierszem jest tylko jeden wiersz, zakres jest zatem następujący: 10,2.
8 6.6666666667 Odpowiednik funkcji RangeAvg(10,2,8)
18 9.333333333 -
5 10. 333333333 -
9 10.6666666667 -

RangeTab:

LOAD * INLINE [

MyField

10

2

8

18

5

9

] ;

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ć!