Skip to main content
Since 1.3.0 Get the number of times the counter changed during the period summarized by the counter aggregate. Any change is counted, including resets to zero.

Arguments

NameTypeDefaultRequiredDescription
summaryCounterSummary-A counter summary created using counter_agg

Returns

BIGINT: The number of times the counter changed

Samples

Get the number of times the counter changed over each 15-minute interval.
SELECT
    id,
    bucket,
    num_changes(summary)
FROM (
    SELECT
        id,
        time_bucket('15 min'::interval, ts) AS bucket,
        counter_agg(ts, val) AS summary
    FROM foo
    GROUP BY id, time_bucket('15 min'::interval, ts)
) t