MySQL многие к одному получают как строку - PullRequest
0 голосов
/ 27 января 2011

Взяв этот пример:Одна таблица персон [id, name].Одна таблица цветов [идентификатор, цвет].Одна таблица ассоциаций.(какие цвета нравятся тем или иным людям) [id, person_id, colour_id].

Я хочу выбрать всех людей с идентификатором и именем, а также столбец с именами цветов, которым нравится каждый, разделенных запятойи пробел: ",".Одному человеку может понравиться больше, чем один цвет.

Как должен выглядеть запрос?

Спасибо.

1 Ответ

4 голосов
/ 27 января 2011

Я сделал хорошо?

SELECT person.id, person.name, GROUP_CONCAT(colour.colour SEPARATOR ', ')
FROM person
JOIN associations ON associations.person_id = person.id
JOIN colours ON colours.id = associations.colour_id
GROUP BY person.id
...