1.9 KiB
title | seotitle | list_title | description | weight | menu | list_query_example | canonical | v2 | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Query cumulative sum | Query cumulative sum in Flux | Cumulative sum | Use the `cumulativeSum()` function to calculate a running total of values. | 10 |
|
cumulative_sum | /influxdb/v2/query-data/flux/cumulativesum/ | /influxdb/v2/query-data/flux/cumulativesum/ |
Use the cumulativeSum()
function
to calculate a running total of values.
cumulativeSum
sums the values of subsequent records and returns each row updated with the summed total.
{{< flex >}} {{% flex-content "half" %}} Given the following input table:
_time | _value |
---|---|
0001 | 1 |
0002 | 2 |
0003 | 1 |
0004 | 3 |
{{% /flex-content %}} | |
{{% flex-content "half" %}} | |
cumulativeSum() returns: |
_time | _value |
---|---|
0001 | 1 |
0002 | 3 |
0003 | 4 |
0004 | 7 |
{{% /flex-content %}} | |
{{< /flex >}} |
{{% note %}} The examples below use the example data variable. {{% /note %}}
Calculate the running total of values
data
|> cumulativeSum()
Use cumulativeSum() with aggregateWindow()
aggregateWindow()
segments data into windows of time, aggregates data in each window into a single
point, then removes the time-based segmentation.
It is primarily used to downsample data.
aggregateWindow()
expects an aggregate function that returns a single row for each time window.
To use cumulativeSum()
with aggregateWindow
, use sum
in aggregateWindow()
,
then calculate the running total of the aggregate values with cumulativeSum()
.
data
|> aggregateWindow(every: 5m, fn: sum)
|> cumulativeSum()