Questo perché time
non può essere convertito (trasmesso) in timestamp
(né le loro varianti relative al fuso orario) in PostgreSQL. F.ex. anche questo fallirà:
SELECT 'now'::time::timestamp
In questi casi, dovresti usare USING
clausola nel tuo ALTER TABLE
istruzione (se puoi modificarla direttamente):
ALTER TABLE [ IF EXISTS ] [ ONLY ] name [ * ] ALTER [ COLUMN ] column_name [ SET DATA ] TYPE data_type [ COLLATE collation ] [ USING expression ]
La tua query sarà simile, ad es.:
ALTER TABLE "my_model"
ALTER COLUMN "column_name"
SET DATA TYPE TIMESTAMP WITH TIME ZONE USING 'yesterday'::date + "column_name"