row_cumsum()
Область применения: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Вычисляет совокупную сумму столбца в сериализованном наборе строк.
Синтаксис
row_cumsum(
термин [,
перезапуск])
Дополнительные сведения о соглашениях синтаксиса.
Параметры
Имя (название) | Type | Обязательно | Описание |
---|---|---|---|
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 | Месяц | оклад | итог |
---|---|---|---|
Алиса | 1 | 1000 | 1000 |
Алиса | 2 | 2000 | 3000 |
Алиса | 3 | 1400 | 4400 |
Борис | 1 | 1000 | 1000 |
Борис | 2 | 1950 | 2950 |
Борис | 3 | 1450 | 4400 |