Bonjour,
j'aurais besoin d'une aide pour une requête particulière. Je n'ai pas trouvé de solution et j'avoue sécher.
Je veux ramener des informations de deux tables possédant un même champ sur une ligne par valeur de clé (dans l'exemple, les clés sont CA et CB)
Un produit cartésien ne convient pas, ni des Inner join.
Voici mes tables :
Table ta
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 with ta as ( select 'c1' as ca, 'v1' as va from dual union all select 'c1' as ca, 'v2' as va from dual union all select 'c1' as ca, 'v3' as va from dual union all select 'c2' as ca, 'v8' as va from dual ), tb as ( select 'c1' as cb, 'w1' as vb from dual union all select 'c2' as cb, 'w2' as vb from dual union all select 'c2' as cb, 'w3' as vb from dual union all select 'c3' as cb, 'w8' as vb from dual ) select * from ta, tbTable Tb
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7CA VA -- -- c1 v1 c1 v2 c1 v3 c2 v8
Le nombre de lignes pour une même valeur de clé n'est pas le même dans les deux tables et aucune des deux tables n'est considérée comme principale.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7CB VB -- -- c1 w1 c2 w2 c2 w3 c3 w8
J'aimerais obtenir le résultat suivant, via une seule requête :
Merci pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9CA_CB VA VB ----- -- -- c1 v1 w1 c1 v2 c1 v3 c2 v8 w1 c2 w2 c2 w3 c3 w8
Partager