sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Cómo modifico la posición de una columna en una tabla de base de datos de PostgreSQL?

"Alterar la posición de la columna" en PostgreSQL Wiki dice:

PostgreSQL actualmente define el orden de las columnas en función del attnum columna del pg_attribute mesa. La única forma de cambiar el orden de las columnas es recreando la tabla o agregando columnas y rotando los datos hasta que alcance el diseño deseado.

Eso es bastante débil, pero en su defensa, en SQL estándar, tampoco hay una solución para reposicionar una columna. Las marcas de bases de datos que admiten cambiar la posición ordinal de una columna están definiendo una extensión de la sintaxis SQL.

Se me ocurre otra idea:puedes definir un VIEW que especifica el orden de las columnas a su gusto, sin cambiar la posición física de la columna en la tabla base.