<p>I've tried the following, but I was unsuccessful:</p>

<pre><code>ALTER TABLE person ALTER COLUMN dob POSITION 37;
</code></pre>

"
Alter column position
" in the PostgreSQL Wiki says:
PostgreSQL currently defines column
  order based on the
```
attnum
```
column of
  the
```
pg_attribute
```
table. The only way
  to change column order is either by
  recreating the table, or by adding
  columns and rotating data until you
  reach the desired layout.
That's pretty weak, but in their defense, in standard SQL, there is no solution for repositioning a column either.  Database brands that support changing the ordinal position of a column are defining an extension to SQL syntax.
One other idea occurs to me:  you can define a
```
VIEW
```
that specifies the order of columns how you like it, without changing the physical position of the column in the base table.