Это может быть способ, создавая интервалы, а затем извлекая из них часы, минуты и секунды:
select extract(hour from seconds) hours,
extract(minute from seconds) minutes,
extract(second from seconds) seconds
from (
select level * interval '1' second as seconds
from dual
connect by level <60*60*24
)