row_cumsum()
適用於:✅Microsoft網狀架構✅Azure 數據✅總管 Azure 監視器✅Microsoft Sentinel
計算串行化數據列集中數據行的累計總和。
語法
row_cumsum(
term [,
restart])
深入瞭解 語法慣例。
參數
姓名 | 類型 | 必要 | 描述 |
---|---|---|---|
term | int、long 或 real | ✔️ | 表示要加總值的表達式。 |
restart | bool |
指出何時應該重新啟動累積作業,或設定回 0。 它可以用來指出數據中的數據分割。 |
傳回
函式會傳回其自變數的累計總和。
範例
下列範例示範如何計算前幾個偶數整數的累計總和。
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 |
此範例示範如何在資料分割時計算累計總和 (在這裡, salary
依 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 | month | 薪資 | 總計 |
---|---|---|---|
Alice | 1 | 1000 | 1000 |
Alice | 2 | 2000 | 3000 |
Alice | 3 | 1400 | 4400 |
Bob | 1 | 1000 | 1000 |
Bob | 2 | 19:50 | 2950 |
Bob | 3 | 1450 | 4400 |