Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment puis-je renvoyer plusieurs lignes identiques en fonction d'un champ de quantité dans la ligne elle-même ?

J'ai utilisé 15 comme maximum pour l'exemple, mais vous devez le définir sur 9999 ou quelle que soit la quantité maximale que vous prendrez en charge.

create table t (product_id number, quantity number);
insert into t values (1,3);
insert into t values (2,5);

select t.* 
  from t 
    join (select rownum rn from dual connect by level < 15) a 
                                 on a.rn <= t.quantity
order by 1;