Requete SQL pas simple jointure + colonnes en ligne

Petit nouveau ! | 2 Messages

03 mai 2012, 10:41

Bonjour,

J'ai un petit problème sur une requete, avis aux experts.

Voici mon problème :

table A membre
id | name
1 | martin
2 | jean
3 | denis

table B travail
id | travail
1 | peinture
2 | enduit
3 | carrelage

table C repartition_tache
id | idMembre | idTravail
1 | 1 | 1
2 | 1 | 2
3 | 1 | 3
4 | 2 | 1
5 | 2 | 3
6 | 3 | 2
7 | 3 | 3

je voudrais faire une requete permettant d'avoir ce resultat :
martin | peinture | enduit | carrelage
jean | peinture | carrelage | null
denis | enduit | carrelage | null

avez vous une idée pour resortir ces résultats via une requete ?

Merci.

ViPHP
ViPHP | 2291 Messages

03 mai 2012, 21:58

Comme ceci je pense :)
SELECT me.name, tr.travail FROM membre AS me, travail AS tr, repartion_tache AS rt WHERE  rt.idMembre = me.id AND rt.id_Travail = tr.id
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Petit nouveau ! | 2 Messages

04 mai 2012, 12:07

Merci Dunbar pour ta réponse.

A priori ta requête va me renvoyer :

martin | peinture
martin | enduit
martin | carrelage
jean | peinture
jean | carrelage
etc...

J'aurais voulu :

martin | peinture | enduit | carrelage
jean | peinture | carrelage | null
denis | enduit | carrelage | null

mais je suis sur une piste que je vais explorer le group_concat.