To proto, že time
nelze převést (přenést) na timestamp
(ani jejich varianty související s časovým pásmem) v PostgreSQL. F.ex. toto také selže:
SELECT 'now'::time::timestamp
V těchto případech byste měli použít USING
klauzule ve vaší ALTER TABLE
výpis (pokud jej můžete upravit přímo):
ALTER TABLE [ IF EXISTS ] [ ONLY ] name [ * ] ALTER [ COLUMN ] column_name [ SET DATA ] TYPE data_type [ COLLATE collation ] [ USING expression ]
Váš dotaz bude vypadat např.:
ALTER TABLE "my_model"
ALTER COLUMN "column_name"
SET DATA TYPE TIMESTAMP WITH TIME ZONE USING 'yesterday'::date + "column_name"