Bonjour,
D'abord désolé pour mon titre qui ne veut pas dire grand chose ...
J'ai une table membre, et une table contact. Cette table permet de lier un membre à un autre (l'un et l'autre étant donc des contacts/amis/... au sens 'social network')
Voila mes deux tables :
MEMBRE.id_mbr est la clé de MEMBRE
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 MEMBRES -id_mbr .... CONTACT -id_mbr_1 -id_mbr_2
(CONTACT.id_mbr_1, CONTACT.id_mbr_2) sont la clé de CONTACT, ainsi que des clés étrangères vers MEMBRE.
Ce que je cherche à faire est recuperer tous les contact en ayant l'id d'un membre, mais comme cette id est soit dans 'id_mbr_1', soit ds id_mbr_2', j'ai besoin de deux requetes :
- SELECT `contact`.`id_mbr_2` AS `id` FROM `contact` WHERE (id_mbr_1 = X)
- SELECT `contact`.`id_mbr_1` AS `id` FROM `contact` WHERE (id_mbr_2 = X)
D'où ma question : comment écrire un seule requête pour tout avoir dans le meme 'rowset' de resultat.
(je dis 'rowset' pq j'utilise une couche DAO en PHP : le Zend Framework, et il l'appelle comme ca)
J'avais pensé à faire req1 UNION req2, mais je ne suis pas sur que ce soit SQLment juste.
Merci
Nicolas.
PS : je peux changer le titre pour quelque chose de plus clair







Répondre avec citation
Partager