sql >> Database >  >> RDS >> PostgreSQL

SQL klonen en converteren van een datumkolom

Zou dit je kunnen helpen?

Dit maakt gebruik van de ingebouwde datumnotatie in de TO_CHAR-functie. Ik ben niet helemaal thuis met postgresql, dus misschien moet er wat worden aangepast.

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

Als de kolom "jaar" nog niet bestaat, moet u deze maken met een ALTER TABLE verklaring eerst

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

Ik raad aan om de documentatie te raadplegen voor het juiste gebruik.

EDIT:Als je je zorgen maakt over de tijd die het kost om alle rijen bij te werken (ik zag dat je op een ander antwoord reageerde dat je ongeveer 2 miljoen records had), dan raad ik aan dit bericht .

Het legt uit dat het misschien sneller is om de tabel helemaal opnieuw te maken met de gegevens in plaats van elke rij bij te werken.



  1. RAW SQL-query met Zend Framework

  2. MySQL:meerdere bestanden in een tabel laden

  3. waar in mysql-clausule

  4. proberen mysql-database bij te werken in php