timeSeriesGroupArray
Sorts time series data by timestamp in ascending order.
Sorts time series data by timestamp in ascending order.
:::note
This function is experimental, enable it by setting allow_experimental_ts_to_grid_aggregate_function=true.
:::
Syntax
timeSeriesGroupArray(timestamp, value)Arguments
timestamp— Timestamp of the sample.DateTimeorUInt32orUInt64value— Value of the time series corresponding to the timestamp.(U)Int*orFloat*orDecimal
Returned value
Returns an array of tuples (timestamp, value) sorted by timestamp in ascending order. If there are multiple values for the same timestamp then the function chooses the greatest of these values. Array(Tuple(T1, T2))
Examples
Basic usage with individual values
WITH
[110, 120, 130, 140, 140, 100]::Array(UInt32) AS timestamps,
[1, 6, 8, 17, 19, 5]::Array(Float32) AS values
SELECT timeSeriesGroupArray(timestamp, value)
FROM
(
SELECT
arrayJoin(arrayZip(timestamps, values)) AS ts_and_val,
ts_and_val.1 AS timestamp,
ts_and_val.2 AS value
);┌─timeSeriesGroupArray(timestamp, value)───────────────┐
│ [(100, 5), (110, 1), (120, 6), (130, 8), (140, 19)] │
└──────────────────────────────────────────────────────┘Passing multiple samples of timestamps and values as arrays of equal size
WITH
[110, 120, 130, 140, 140, 100]::Array(UInt32) AS timestamps,
[1, 6, 8, 17, 19, 5]::Array(Float32) AS values
SELECT timeSeriesGroupArray(timestamps, values);┌─timeSeriesGroupArray(timestamps, values)──────────────┐
│ [(100, 5), (110, 1), (120, 6), (130, 8), (140, 19)] │
└───────────────────────────────────────────────────────┘Introduced in version 25.9.
timeSeriesDerivToGrid
Aggregate function that takes time series data as pairs of timestamps and values and calculates [PromQL-like derivative](https://prometheus.
timeSeriesInstantDeltaToGrid
Aggregate function that takes time series data as pairs of timestamps and values and calculates [PromQL-like idelta](https://prometheus.