Ответ 1
ALTER TABLE <tablename> ALTER COLUMN <columnname> TYPE DATE
using to_date(<columnname>, 'YYYY-MM-DD');
У меня есть столбец данных varchar
и столбца типа date
.
Мне нужно обновить данные столбца varchar
в столбце date
в PostgreSQL.
Возможно ли это?
Спасибо.
ALTER TABLE <tablename> ALTER COLUMN <columnname> TYPE DATE
using to_date(<columnname>, 'YYYY-MM-DD');
UPDATE tableName SET dateColumn=to_date(varcharColumn, 'DD MM YYYY')
Предполагая, что вы сохраняете "07 04 2010"
В документации вы можете найти дополнительные примеры и пояснения:
http://www.postgresql.org/docs/current/interactive/functions-formatting.html
to_date('05 Dec 2000', 'DD Mon YYYY')
синтаксис для придания типов:
alter table table_name alter column_name
type converting_data_type using(column_name::converting_data_type)
преобразование из varchar на сегодняшний день
alter table table_name
alter column_name type date using(column_name::date)