我正试图使用以下变更集将Postgsql数据库中的日期类型更改为整数:
--changeset Sihem:001
ALTER TABLE training
ALTER COLUMN end_date TYPE integer USING end_date::integer;
但我遇到了一个错误:无法将日期类型转换为整数。你知道吗?
你不能。然而,你可以转换为,比如说,自某个基准日期以来的天数:
using extract(epoch from (end_date - '1970-01-01'::date))
我通过:解决它
ALTER TABLE training
ALTER COLUMN end_date TYPE integer USING (EXTRACT(ISOYEAR FROM end_date));