select row_number() over (order by <field> nulls last) as rownum, *
from foo_tbl
order by <field>
Jeśli zamówienie nie jest konieczne, odpowiedź można również uprościć:
select row_number() over(), * -- notice: no fields are needed
from foo_tbl
SQL Fiddle Proof of Concept