"Alterar posição da coluna" no PostgreSQL Wiki diz:
O PostgreSQL atualmente define a ordem das colunas com base noattnum
coluna dopg_attribute
tabela. A única maneira de alterar a ordem das colunas é recriando a tabela ou adicionando colunas e girando dados até chegar ao layout desejado.
Isso é muito fraco, mas em sua defesa, no SQL padrão, também não há solução para reposicionar uma coluna. As marcas de banco de dados que suportam a alteração da posição ordinal de uma coluna estão definindo uma extensão para a sintaxe SQL.
Uma outra ideia me ocorre:você pode definir um
VIEW
que especifica a ordem das colunas como você gosta, sem alterar a posição física da coluna na tabela base.