En Postgres 8.4... (ordenar por número es solo un alias para la columna por la que ordenar)
select id,hash, max(id) over (partition by hash) h
from my_table order by 3 desc,1 desc;
O
select id,hash
from my_table order by max(id) over (partition by hash) desc,
id desc