Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Repetindo linhas com base no valor da coluna em cada linha


Você pode usar um CTE recursivo:
with    cte(Job, Repeat, i) as 
        (
        select  Job
        ,       Repeat
        ,       0
        from    YourTable
        union all
        select  Job
        ,       Repeat
        ,       i + 1
        from    cte
        where   cte.i < cte.Repeat
        )
select  *
from    cte
order by
        Job
,       i

Exemplo ao vivo no SQL Fiddle.