Je suis désolé pour le titre ambigu - je ne pouvais pas trouver une explication pour le comportement que je veux sans donner d'exemples. De plus, s'il s'agit d'un sujet dupliqué, veuillez m'en indiquer le bon et je vais le supprimer. Je ne pouvais pas chercher ce que je voulais parce que, comme je l'ai dit plus haut, c'est difficile à expliquer ...MySQL JOIN deux tables
Quoi qu'il en soit, je veux sélectionner les données de deux tables. L'un contient un tas de projets, tandis qu'un autre contient plusieurs éléments de liste de contrôle pour chaque projet. J'ai une LEFT JOIN
très primitive requête en ce moment, qui renvoie cette (il n'y a qu'un seul projet, pour le moment):
name description Project file symlinks One Project file symlinks Two Project file symlinks seven Project file symlinks ahahahahaha Project file symlinks many Project file symlinks ANOTHER ONE
Ce que je comme arriver est ce, pour chaque projet dans le table de projets:
name description Project file symlinks One Two seven ahahahahaha many ANOTHER ONE
Ou nul, cela n'a pas d'importance. Essentiellement, je veux seulement imprimer le nom du projet une fois, mais imprimer tous ses éléments de liste de contrôle correspondants.
Voici la requête que j'ai actuellement:
SELECT Projects.name, DevProgress.description FROM DevProgress LEFT JOIN Projects ON Projects.id = DevProgress.projectID
Quelqu'un peut-il proposer une requête MySQL JOIN
pour que je puisse obtenir le comportement que je veux? Merci pour toute aide,
EDIT
Merci beaucoup à Dcp pour me aider. Je suis finalement venu avec cette requête LEFT JOIN
, apparaissant comme référence:
SELECT name, GROUP_CONCAT(description) AS checklist FROM Projects LEFT JOIN DevProgress ON Projects.id = DevProgress.projectID GROUP BY name;
Et la sortie:
name checklist Project file symlinks One,Two,seven,ahahahahaha,many,ANOTHER ONE Testing Project numer 1 NULL
James
pouvez-vous poster votre requête actuelle? – DeaconDesperado