PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Como converter uma coluna de tabela para outro tipo de dados


Parece que o problema é que você tem strings vazias em sua tabela. Você precisará lidar com isso, provavelmente com uma instrução case, como:

execute %{ALTER TABLE "table1" ALTER COLUMN columnB TYPE integer USING CAST(CASE columnB WHEN '' THEN NULL ELSE columnB END AS INTEGER)}

Atualização:completamente reescrita com base na pergunta atualizada.