Comment désagréger une requête ?
Bonjour,
J'ai une table A contenant entre autres les champs A1, A2 et A3
Je voudrais que chacun de ces 3 champs aillent dans la colonne B1 de la table B.
Donc une ligne de la table A va générer 3 lignes dans B (une pour chaque champ A1, A2 et A3.
Je voudrais effectuer cette opération sans avoir à faire 3 insert:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
Insert into B1(B_id, B1)
select nom_sequence.nextval, A1
from A;
Insert into B1(B_id, B1)
select nom_sequence.nextval, A2
from A;
Insert into B1(B_id, B1)
select nom_sequence.nextval, A3
from A; |
la solution suivante ne fonctionne pas car Oracle m'interdit d'appeler la même sequence dans un UNION:
Code:
1 2 3 4 5 6 7 8 9 10
|
Insert into B1(B_id, B1)
select nom_sequence.nextval, A1
from A
UNION ALL
select nom_sequence.nextval, A2
from A
UNION ALL
select nom_sequence.nextval, A3
from A; |
QQ'un a t'il une solution ?