Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

timeSeriesGroupArray

timeSeriesGroupArray

Introducido en: v25.8.0

Ordena los datos de series temporales por marca temporal en orden ascendente.

Si varias muestras tienen la misma marca temporal, solo se utiliza una de ellas: la muestra con el mayor valor. Un valor NaN pierde frente a cualquier otro valor, por lo que solo se utiliza un valor NaN si todas las muestras con esta marca temporal son NaN.

Sintaxis

timeSeriesGroupArray(timestamp, value)

Argumentos

Valor devuelto

Devuelve un array de tuplas (timestamp, value) ordenado por marca temporal en orden ascendente. Array(Tuple(T1, T2))

Ejemplos

Uso básico con valores individuales

SET allow_experimental_time_series_aggregate_functions = 1;
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)] │
└────────────────────────────────────────────┘

Pasar varias muestras de marcas temporales y valores como arrays del mismo tamaño

SET allow_experimental_time_series_aggregate_functions = 1;
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)] │
└────────────────────────────────────────────┘
Navigation