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

Clonazione SQL e conversione di una colonna di data

Ti aiuterebbe?

Questo sta usando la formattazione della data incorporata nella funzione TO_CHAR. Non sono completamente a mio agio con Postgresql, quindi potrebbe essere necessario apportare alcune modifiche.

UPDATE
    TABLENAME
SET
    year = TO_CHAR(date, 'YYYY'),
    date = TO_CHAR(date, 'YYYYMM');

Se la colonna "anno" non esiste già, dovrai crearla con un ALTER TABLE prima l'affermazione

ALTER TABLE [table_name] ADD COLUMN [column_name] [data_type] {collation} {column_contstraint};

Consiglierei di controllare la documentazione per il corretto utilizzo.

EDIT:se ti stai preoccupando del tempo necessario per aggiornare tutte le righe (ho visto che hai commentato un'altra risposta che avevi circa 2 milioni di record), ti suggerisco di leggere questo post .

Spiega che potrebbe essere più veloce creare la tabella da zero con i dati invece di aggiornare ogni singola riga.