sql >> Base de Datos >  >> RDS >> Oracle

Repetir filas según el valor de la columna en cada fila

Podrías usar un 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

Ejemplo en vivo en SQL Fiddle.