En PostgreSQL, ALTER TABLE
puede tomar una serie de operaciones. Entonces:
ALTER TABLE <tablename> RENAME <oldcolumn> TO <newcolumn>;
ALTER TABLE <tablename> ALTER COLUMN <columnname> TYPE <newtype>;
es lo mismo que
ALTER TABLE <tablename>
ALTER COLUMN <columnname> TYPE <newtype>
RENAME <oldcolumn> TO <newcolumn>;
Sin embargo... ¿por qué? IIRC, el cambio de nombre no provocará un escaneo completo de la tabla, por lo que no hay ningún beneficio en hacer las dos declaraciones por separado, dentro de una transacción. ¿Qué problema estás tratando de resolver con esto?