> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-3a82795f.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Función de agregación que calcula reinicios similares a PromQL sobre datos de series temporales en la cuadrícula especificada.

# timeSeriesResetsToGrid

<div id="timeSeriesResetsToGrid">
  ## timeSeriesResetsToGrid
</div>

Introducido en: v25.6.0

Función de agregación que toma series temporales como pares de marcas de tiempo y valores, y calcula [reinicios similares a PromQL](https://prometheus.io/docs/prometheus/latest/querying/functions/#resets) a partir de estos datos sobre una cuadrícula temporal regular definida por la marca de tiempo de inicio, la marca de tiempo de fin y el paso. Para cada punto de la cuadrícula, las muestras para calcular `resets` se toman dentro de la ventana temporal especificada.

<Note>
  Esta función es experimental; actívala estableciendo `allow_experimental_ts_to_grid_aggregate_function=true`.
</Note>

**Sintaxis**

```sql theme={null}
timeSeriesResetsToGrid(start_timestamp, end_timestamp, grid_step, staleness)(timestamp, value)
```

**Parámetros**

* `start_timestamp` — Especifica el inicio de la cuadrícula. - `end_timestamp` — Especifica el final de la cuadrícula. - `grid_step` — Especifica el paso de la cuadrícula en segundos. - `staleness` — Especifica la "antigüedad" máxima, en segundos, de las muestras consideradas.

**Argumentos**

* `timestamp` — Marca temporal de la muestra. Puede ser un valor individual o un array. - `value` — Valor de la serie temporal correspondiente a la marca temporal. Puede ser un valor individual o un array.

**Valor devuelto**

Valores de `resets` en la cuadrícula especificada como un `Array(Nullable(Float64))`. El array devuelto contiene un valor para cada punto de la cuadrícula temporal. El valor es NULL si no hay muestras dentro del intervalo para calcular el valor de `resets` de un punto concreto de la cuadrícula.

**Ejemplos**

**Calcular valores de `resets` en la cuadrícula \[90, 105, 120, 135, 150, 165, 180, 195, 210, 225]**

```sql title=Query theme={null}
WITH
    -- NOTA: el intervalo entre 130 y 190 muestra cómo se rellenan los valores para ts = 180 según el parámetro window
    [110, 120, 130, 190, 200, 210, 220, 230]::Array(DateTime) AS timestamps,
    [1, 3, 2, 6, 6, 4, 2, 0]::Array(Float32) AS values, -- array de valores correspondientes a los timestamps anteriores
    90 AS start_ts,       -- inicio de la cuadrícula de timestamps
    90 + 135 AS end_ts,   -- fin de la cuadrícula de timestamps
    15 AS step_seconds,   -- paso de la cuadrícula de timestamps
    45 AS window_seconds  -- ventana de "staleness"
SELECT timeSeriesResetsToGrid(start_ts, end_ts, step_seconds, window_seconds)(timestamp, value)
FROM
(
    -- Esta subconsulta convierte arrays de timestamps y valores en filas de `timestamp`, `value`
    SELECT
        arrayJoin(arrayZip(timestamps, values)) AS ts_and_val,
        ts_and_val.1 AS timestamp,
        ts_and_val.2 AS value
);
```

```response title=Response theme={null}
┌─timeSeriesResetsToGrid(start_ts, end_ts, step_seconds, window_seconds)(timestamp, value)─┐
│ [NULL,NULL,0,1,1,1,NULL,0,1,2]                                                           │
└──────────────────────────────────────────────────────────────────────────────────────────┘
```

**La misma consulta con argumentos de tipo Array**

```sql title=Query theme={null}
WITH
    [110, 120, 130, 190, 200, 210, 220, 230]::Array(DateTime) AS timestamps,
    [1, 3, 2, 6, 6, 4, 2, 0]::Array(Float32) AS values,
    90 AS start_ts,
    90 + 135 AS end_ts,
    15 AS step_seconds,
    45 AS window_seconds
SELECT timeSeriesResetsToGrid(start_ts, end_ts, step_seconds, window_seconds)(timestamps, values);
```

```response title=Response theme={null}
┌─timeSeriesResetsToGrid(start_ts, end_ts, step_seconds, window_seconds)(timestamp, value)─┐
│ [NULL,NULL,0,1,1,0,NULL,0,1,2]                                                           │
└──────────────────────────────────────────────────────────────────────────────────────────┘
```
