Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

timeSeriesGroupArray

timeSeriesGroupArray

Introduit dans : v25.8.0

Trie les données de séries temporelles par horodatage dans l’ordre croissant.

Si plusieurs échantillons ont le même horodatage, un seul est utilisé : celui dont la valeur est la plus élevée. Une valeur NaN est inférieure à toute autre valeur ; elle n’est donc utilisée que si tous les échantillons associés à cet horodatage sont NaN.

Syntaxe

timeSeriesGroupArray(timestamp, value)

Arguments

Valeur renvoyée

Renvoie un tableau de tuples (timestamp, value) triés par horodatage dans l’ordre croissant. Array(Tuple(T1, T2))

Exemples

Utilisation de base avec des valeurs individuelles

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)] │
└────────────────────────────────────────────┘

Passage de plusieurs échantillons d’horodatages et de valeurs sous forme de tableaux de même taille

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