GENERATE_SERIES()
GENERATE_SERIES() is a SQL function in the PostgreSQL Specific category. PostgreSQL: generates a series of numbers, dates, or timestamps. Extremely useful for data generation. The syntax is SELECT * FROM generate_series(start, stop, step);. It accepts start, stop, step. It returns series of values. A typical example: -- Numbers: SELECT * FROM generate_series(1, 5); -- 1, 2, 3, 4, 5 SELECT * FROM generate_series(1, 10, 3); -- 1, 4, 7, 10 -- Dates: SELECT generate_series::date FROM generate_series('2026-01-01'::date, '2026-01-10'::date, '1 day'); -- 2026-01-01 through 2026-01-10 -- IN clause expansion: SELECT * FROM employees WHERE id IN (SELECT * FROM generate_series(1, 5)); A close relative is SERIAL, which postgreSQL auto-increment type. Creates an INTEGER column with a sequence. Equivalent to AUTO_INCREMENT in MySQL. A close relative is RETURNING, which postgreSQL extension that returns values from INSERT/UPDATE/DELETE statements (like OUTPUT in SQL Server). A close relative is ARRAY, which postgreSQL supports array columns and array operations. Can be multi-dimensional.