MySQL многие к одному получают как строку

Возьмем этот пример:

Одна таблица лиц [идентификатор, имя].
Одна таблица цветов [id, color].
Одна таблица ассоциаций. (какие цвета нравятся каким людям) [id,person_id,color_id].

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

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

Спасибо.


person Francisc    schedule 27.01.2011    source источник


Ответы (1)


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

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
person TehShrike    schedule 27.01.2011