"Alter column position" nel wiki di PostgreSQL dice:
PostgreSQL attualmente definisce l'ordine delle colonne in base a attnum
colonna dell'pg_attribute
tavolo. L'unico modo per modificare l'ordine delle colonne è ricreare la tabella o aggiungere colonne e ruotare i dati fino a raggiungere il layout desiderato.
È piuttosto debole, ma a loro difesa, nell'SQL standard, non esiste nemmeno una soluzione per riposizionare una colonna. I marchi di database che supportano la modifica della posizione ordinale di una colonna stanno definendo un'estensione alla sintassi SQL.
Mi viene in mente un'altra idea:puoi definire una VIEW
che specifica l'ordine delle colonne come preferisci, senza modificare la posizione fisica della colonna nella tabella di base.