2017-06-17 7 views
0

J'essaye de changer le format de date de la colonne "yearcode" en quatre chiffres (aaaa), puisque je n'ai pas le jour spécifique pour le Les données.modifier le format de données en utilisant to_date ne change pas le nombre de chiffres (postgresql)

Cependant, lorsque je vérifie le format de données de la colonne, le tableau affiche toujours le format de la date au format "aaaa-mm-jj".

Voici le code que j'ai écrit pour changer le format:

alter table postmaster_compensation alter yearcode type date using to_date('1845','yyyy') 

Je me demande s'il y a un problème avec le code, ou je ne peux pas changer le format en modèle « aaaa » du tout? la référence 9.6 indique 'aaaa' est un format de date valide.

Merci!

+0

'to_date ('1845', 'yyyy')' donne "01/01/1845", pas "1845" –

+0

Je vois, merci !! – Bec

Répondre

0

Si la colonne doit être char, puis changer le format de la colonne char et d'obtenir l'année en utilisant to_char

alter table postmaster_compensation alter yearcode type char(4) using to_char('01/01/1845','yyyy') 

Si la colonne doit être int puis changer le format de la colonne int et extraire l'année de la date

alter table postmaster_compensation alter yearcode type int using extract(year from '01/01/1845','yyyy')