PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

PgSQL trasforma il giorno dell'anno in data

Usa

select (date '2013-01-01' + interval '53 days')::date

o

select cast(date '2013-01-01' + interval '53 days' as date)

Funzione SQL standard di PostgreSQL "extract()" farà operare sui timestamp, ma a) "data" non è un argomento valido per estrarre() e b) restituisce sottocampi, non una raccolta di sottocampi. Concettualmente, una data è costituita da una raccolta di tre sottocampi:anno, mese e giorno.

select extract(year from current_timestamp),
       extract(month from current_timestamp),
       extract(day from current_timestamp),
       -- Concatenate and cast to type "date".
       (extract(year from current_timestamp) || '-' || 
       extract(month from current_timestamp) || '-' ||
       extract(day from current_timestamp))::date