无法使用liquibase将类型date转换为整数

u2nhd7ah  于 2021-07-24  发布在  Java
关注(0)|答案(2)|浏览(314)

我正在尝试使用以下更改集将postgsql db中的日期类型更改为整数:

--changeset Sihem:001
ALTER TABLE training 
  ALTER COLUMN end_date TYPE integer USING end_date::integer;

但我遇到了一个错误:无法将日期类型转换为整数。有什么想法吗?

r9f1avp5

r9f1avp51#

你不能。但是,您可以转换为,例如,自某个基准日期起的天数:

using extract(epoch from (end_date - '1970-01-01'::date))
bcs8qyzn

bcs8qyzn2#

我通过以下方式解决:

ALTER TABLE training
    ALTER COLUMN end_date TYPE integer USING (EXTRACT(ISOYEAR FROM end_date));

相关问题