Трябва да можете да използвате row_number()
(което е прозоречна функция
), за да зададете "итератора", който искате. Това ще създаде пореден номер за всеки ред:
select *
from
(
select col,
row_number() over(order by col) rn
from yourtable
) src
order by random()
Вижте SQL Fiddle с демонстрация