sql >> Database >  >> RDS >> PostgreSQL

PostgreSQL incrementele datums?

Je kunt meedoen met een generate_series uitgang:

select
    '2013-05-01'::date + g.o AS "date with offset"
from
    generate_series(0, 30) AS g(o)

Uitgang:

"2013-05-01"
"2013-05-02"
"2013-05-03"
...
"2013-05-29"
"2013-05-30"
"2013-05-31"

Of... een eenvoudigere methode na het definiëren van een nieuwe opgeslagen procedure :)

CREATE OR REPLACE FUNCTION generate_series(date, date) RETURNS
SETOF date AS $$
SELECT $1 + g.s
FROM generate_series(0, ($2 - $1)) AS g(s);
$$ LANGUAGE SQL IMMUTABLE;

Noem het gewoon zo:

SELECT * FROM generate_series(start_date, end_date);


  1. Fout 1064 in Grafana voor het maken van een grafiek met behulp van mysql-database

  2. Webservices gebruiken van Oracle PL/SQL

  3. MySQL rij naar kolom

  4. PostgreSQL schakelt meer uitvoer uit