Я сожалею о двусмысленном названии - я не мог придумать объяснение поведения, которое я хочу, не приводя примеров.Кроме того, если это дублирующая тема, укажите мне правильную, и я ее удалю.Я не мог найти то, что хотел, потому что, как я сказал выше, это сложно объяснить ...
В любом случае, я хочу выбрать данные из двух таблиц.Один содержит несколько проектов, а другой содержит несколько элементов контрольного списка для каждого проекта.У меня есть очень примитивный LEFT JOIN
запрос в данный момент, который возвращает это (на данный момент есть только один проект):
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
То, что я бы хотел бы , чтобы это произошлоэто для каждого проекта в таблице проектов:
name description
Project file symlinks One
Two
seven
ahahahahaha
many
ANOTHER ONE
Или ноль, это не имеет значения.По сути, я хочу напечатать имя проекта только один раз, но распечатать все соответствующие элементы контрольного списка.
Вот запрос, который у меня сейчас есть:
SELECT Projects.name, DevProgress.description
FROM DevProgress
LEFT JOIN Projects
ON Projects.id = DevProgress.projectID
Может кто-нибудь предложить MySQL JOIN
запрос, чтобы я мог получить поведение, которое я хочу?Спасибо за любую помощь,
РЕДАКТИРОВАТЬ
Большое спасибо dcp за помощь мне.В конце концов я пришел с этим LEFT JOIN
запросом, опубликованным как ссылка:
SELECT name, GROUP_CONCAT(description) AS checklist
FROM Projects LEFT JOIN DevProgress ON Projects.id = DevProgress.projectID
GROUP BY name;
И вывод:
name checklist
Project file symlinks One,Two,seven,ahahahahaha,many,ANOTHER ONE
Testing Project numer 1 NULL
Джеймс