Saltar al contenido principal
Alias: generateSeries

Sintaxis

Devuelve una tabla con una única columna, ‘generate_series’ (UInt64), que contiene enteros desde start hasta stop, ambos inclusive:
generate_series(START, STOP)
Devuelve una tabla con una única columna, ‘generate_series’ (UInt64), que contiene enteros desde start hasta stop, ambos inclusive, con el intervalo entre valores dado por STEP:
generate_series(START, STOP, STEP)
STEP puede ser negativo; en ese caso, la serie se genera en orden descendente desde START hasta STOP. Si STEP es negativo y START < STOP, el resultado es vacío.

Ejemplos

Las siguientes consultas devuelven tablas con el mismo contenido, pero con distintos nombres de columna:
SELECT * FROM numbers(10, 5);
┌─number─┐
│     10 │
│     11 │
│     12 │
│     13 │
│     14 │
└────────┘
SELECT * FROM generate_series(10, 14);
┌─generate_series─┐
│              10 │
│              11 │
│              12 │
│              13 │
│              14 │
└─────────────────┘
Y las siguientes consultas devuelven tablas con el mismo contenido, pero con nombres de columna distintos (aunque la segunda opción es más eficiente):
SELECT * FROM numbers(10, 11) WHERE number % 3 == (10 % 3);
┌─number─┐
│     10 │
│     13 │
│     16 │
│     19 │
└────────┘
SELECT * FROM generate_series(10, 20, 3);
┌─generate_series─┐
│              10 │
│              13 │
│              16 │
│              19 │
└─────────────────┘
Generar una serie descendente:
SELECT * FROM generate_series(9, 0, -1);
┌─generate_series─┐
│               9 │
│               8 │
│               7 │
│               6 │
│               5 │
│               4 │
│               3 │
│               2 │
│               1 │
│               0 │
└─────────────────┘
Última modificación el 10 de junio de 2026