Requètes imbriqués et conditions
Résolu
pandi-panda
-
pandi-panda -
pandi-panda -
Bonjour,
Je suis actuellement entrain de créer une base de données contenant les tables suivantes :
Boissons(Id_boisson, Nom_boisson, Qte_Boisson, prix_Boisson);
Boissonsalcoolisee(Id_boisson, DegreeAlcool);
Boissonsnonalcoolisee(Id_boisson, DegreeSucre);
Voila je pense que vous avez compris le principe une table regroupant toutes les boissons puis 2 tables completants la table boisson selon qu'elles soient alcoolisés ou non.
Mon problème est le suivant :
Je voudrai afficher tous les champs d'une boisson qui la concerne ( champs degreealcool si elle est alcoolisée ou degreesucre si elle ne l'est pas)
J'ai essayé des requètes imbriqués mais je n'arrive à aucun résultats, si vous pouviez m'aider.
Merci d'avance
Je suis actuellement entrain de créer une base de données contenant les tables suivantes :
Boissons(Id_boisson, Nom_boisson, Qte_Boisson, prix_Boisson);
Boissonsalcoolisee(Id_boisson, DegreeAlcool);
Boissonsnonalcoolisee(Id_boisson, DegreeSucre);
Voila je pense que vous avez compris le principe une table regroupant toutes les boissons puis 2 tables completants la table boisson selon qu'elles soient alcoolisés ou non.
Mon problème est le suivant :
Je voudrai afficher tous les champs d'une boisson qui la concerne ( champs degreealcool si elle est alcoolisée ou degreesucre si elle ne l'est pas)
J'ai essayé des requètes imbriqués mais je n'arrive à aucun résultats, si vous pouviez m'aider.
Merci d'avance
1 réponse
-
Salut,
La solution c'est la jointure externe qui ramène l'enregistrement d'une table même sans correspondance dans une seconde.
Sous oracle je mettrais :
Select A.Id_boisson, Nom_boisson, Qte_Boisson, prix_Boisson, DegreeAlcool, DegreeSucre
From Boissons A , Boissonsalcoolisee B , Boissonsnonalcoolisee C
where A.id_boisson=B.id_boisson(+)
and A.id_boisson=C.id_boisson(+)
/
Le (+) représente la jointure externe sous Oracle.
cdlt
Un étranger, c'est un ami qu'on n'a pas encore rencontré.-
Merci pour ta reponse mais en fait le souci c'est que par exemple :
La boisson jus d'orange aura un Degree de sucre mais pas d'alcool et du coup y a un problème avec la table boissonsnonalcoolisee qui est vide pour cette boisson.
Avec cette requète Sql ne me renvoie aucune ligne.
Je sais si j'ai suis trés clair ?
Merci -
-
-