row_cumsum()

Oblicza skumulowaną sumę kolumny w serializowanym zestawie wierszy.

Składnia

row_cumsum(termin [,restart] )

Dowiedz się więcej o konwencjach składniowych.

Parametry

Nazwa Typ Wymagane Opis
Termin int, long, or real ✔️ Wyrażenie wskazujące wartość do zsumowania.
Ponownie uruchomić bool Wskazuje, kiedy operacja akumulowania powinna zostać uruchomiona ponownie lub ustawiona z powrotem na wartość 0. Może służyć do wskazywania partycji w danych.

Zwraca

Funkcja zwraca skumulowaną sumę argumentu.

Przykłady

W poniższym przykładzie pokazano, jak obliczyć skumulowaną sumę kilku pierwszych parzystych liczb całkowitych.

datatable (a:long) [
    1, 2, 3, 4, 5, 6, 7, 8, 9, 10
]
| where a%2==0
| serialize cs=row_cumsum(a)
a Cs
2 2
4 6
6 12
8 20
10 30

W tym przykładzie pokazano, jak obliczyć sumę skumulowaną (tutaj, z salary) podczas partycjonowania danych (tutaj, według name):

datatable (name:string, month:int, salary:long)
[
    "Alice", 1, 1000,
    "Bob",   1, 1000,
    "Alice", 2, 2000,
    "Bob",   2, 1950,
    "Alice", 3, 1400,
    "Bob",   3, 1450,
]
| order by name asc, month asc
| extend total=row_cumsum(salary, name != prev(name))
name miesiąc Wynagrodzenia suma
Alice 1 1000 1000
Alice 2 2000 3000
Alice 3 1400 4400
Bob 1 1000 1000
Bob 2 1950 2950
Bob 3 1450 4400