RangeAvg — funkcja skryptu i funkcja wykresu
Ostatnia aktualizacja: 7.10.2026
Funkcja RangeAvg() zwraca średnią wartość z zakresu. Argumentem wejściowym funkcji może być zakres wartości lub wyrażenie.
RangeAvg(first_expr[, Expression])
Typ zwracanych danych: liczbowy
Argument tej funkcji może zawierać funkcje międzywierszowe, które same zwracają listę wartości.
- first_expr: wyrażenie lub pole zawierające dane do obliczenia średniej.
- Expression: Opcjonalne wyrażenia lub pola zawierające dodatkowe dane do uśrednienia. Można używać wielu dodatkowych wyrażeń.
Jeśli nie zostanie znaleziona żadna wartość liczbowa, zostanie zwrócona wartość NULL.
| Przykład | Wynik |
|---|---|
| RangeAvg (1,2,4) |
Zwraca wartość 2,33333333 |
| RangeAvg (1,'xyz') | Zwraca wartość 1 |
| RangeAvg (null( ), 'abc') | Zwraca NULL |
Przykład: (przy użyciu wyrażenia)
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().
| MyField | RangeAvg (Above(MyField,0,3)) | Objaśnienie |
|---|---|---|
| 10 | 10 | Jest to najwyższy wiersz, zakres obejmuje tylko jedną wartość. |
| 2 | 6 | Powyżej tego wiersza znajduje się tylko jeden wiersz, więc zakres to: 10,2. |
| 8 | 6.6666666667 | Odpowiednik funkcji RangeAvg(10,2,8) |
| 18 | 9.333333333 | - |
| 5 | 10 333333333 | - |
| 9 | 10.6666666667 | - |
Dane zastosowane w przykładach:
RangeTab:
LOAD * INLINE [
MyField
10
2
8
18
5
9
] ;
Przykład: (w formie tabeli)
Dodaj przykładowy skrypt do dokumentu i uruchom go. Następnie dodaj do arkusza w swoim dokumencie co najmniej pola wyszczególnione w kolumnie wyników, aby wyświetlić wynik.
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 docelowa przedstawia zwrócone wartości funkcjiMyRangeAvg dla każdego z rekordów w tabeli.
| RangeID | MyRangeAvg |
|---|---|
| 1 | 7 |
| 2 | 4 |
| 3 | 6 |
| 4 | 12.666 |
| 5 | 6.333 |
| 6 | 5 |