How do I alter the position of a column in a PostgreSQL database table?

https://wiki.postgresql.org/wiki/Alter_column_position

The three workarounds from this article are:

  1. Recreate the table
  2. Add columns and move data
  3. Hide the differences with a view