Bonjour à tous,
J'ai besoin de conseil d'expert concernant une jointure entre 3 tables.
Voici mon probleme: j'ai trois tables A, B et C qui représentent des articles. Elles font partie d'un ERP, je n'ai pas la main dessus
Dans chacune des table, 2 champs commun: ID et LIBELLE
Une quatrième table, Fiche, comporte une clé externe ID_PRODUIT représentant un identifiant produit pouvant être dans A, B ou C....
Les elements de A B et C sont non disjoints IE je peux avoir comme id dans A: 1, 2
dans B: 2, 3 et dans C: 3, 4
je cherche a faire une requete la plus optimisée possible -car ces tables sont volumineuses...- permettant de remonter de façon unique tous les produits (id et libelle): D : 1, 2, 3, 4
La façon triviale de faire:
select distinct ID, LIBELLE from
(
select ID, LIBELLE from A
union
select ID, LIBELLE from B
union
select ID, LIBELLE from C
)
Merci à tous!!!
PS: SGBD Oracle 8i