PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come convertire una colonna di una tabella in un altro tipo di dati

Sembra che il problema sia che hai stringhe vuote nella tua tabella. Dovrai gestirli, probabilmente con un'istruzione case, come:

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

Aggiornamento:completamente riscritto in base alla domanda aggiornata.