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 : 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;
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
 
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 ?