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:
la solution suivante ne fonctionne pas car Oracle m'interdit d'appeler la même sequence dans un UNION:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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;
QQ'un a t'il une solution ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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;
Partager