How to Change a Column Type in Redshift

Last updated July 25, 2026 · By the SaturnSQL team

ALTER TABLE ... ALTER COLUMN ... TYPE only works for widening VARCHAR columns in place. For any other type change, add a new column, backfill it with UPDATE, drop the old column, and rename the new one.

VARCHAR widening (the only in-place change)

ALTER TABLE customers ALTER COLUMN email TYPE VARCHAR(512);

Add-backfill-rename for everything else

ALTER TABLE orders ADD COLUMN amount_new NUMERIC(12,2);
UPDATE orders SET amount_new = amount::NUMERIC(12,2);
ALTER TABLE orders DROP COLUMN amount;
ALTER TABLE orders RENAME COLUMN amount_new TO amount;

Run the pattern inside one transaction if readers must never see the half-migrated state, and VACUUM afterwards since the UPDATE leaves deleted row versions behind.

Run this in SaturnSQL

SaturnSQL is a browser-based SQL editor for teams: shared query library, schema-aware autocomplete, and scheduled exports to Google Sheets and Slack.

Try it free

Related Redshift guides

© 2026 Panda Capital Oy Ab. All rights reserved.