Bonjour,
j'ai un souci pour exprimer une requete sql qui ne me parrait pas tres complexe et pourtant ...
Cela fait un bail que je n'ai pas fait de sql et j'ai perdu la main.
Je vous explique rapidement mon probleme.
J'ai des contacts et des groupes. Chacun de ces contacts peut faire partie de 0 ou plusieurs groupes. Ces derniers peuvent aussi contenir eux meme d'autres groupes (groupes de groupes).
Donc dans ma bdd, j'ai une table contact (id_contact ...), une table groupe (id_group ...), une table appartenir (id_contact -> id_group) et enfin une table contenir ([groupe conteneur]id_contient -> [groupe contenu]id_contenu).
J'ai fait la requete sql suivante :
Elle me retourne la liste des groupes du contact 1 (donc le groupe 2). Toutefois, le groupe 2 fait lui même partie du groupe 1, donc indirectement le contact 1 devrait faire partie du groupe 1, en plus du groupe 2.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT groupe.id_group FROM groupe, appartenir, contact, contenir WHERE groupe.id_group = appartenir.id_group AND appartenir.id_contact = contact.id_contact AND contact.id_contact = 1;
Je suis sur que vous etes tres nombreux à pouvoir m'aider sur ce cas d'école, et je vous serez vraiment très reconnaissant de me filer un petit coup de main .
Merci
Partager