У меня есть три таблицы, подобные этой:
персона:
id | name | gender
---------------------------
1 Joe male
2 Daniel male
3 Sarah female
person_skills:
person_id | skill_id
---------------------------
1 1
1 2
1 3
2 1
2 2
...
навыки:
id | skill_name
-----------------------
1 Writing
2 Programming
3 Singing
...
IМне нужно получить все навыки людей, когда я просто отправлю один из их навыков в своем запросе.
Это мой код:
SELECT a.name, a.gender,
GROUP_CONCAT(DISTINCT c.skill_name),
GROUP_CONCAT(DISTINCT c.id as skill_id)
FROM persons a
LEFT JOIN person_skills b ON b.person_id = a.id
LEFT JOIN skills c ON c.id = b.skill_id
WHERE b.skill_id = 3 GROUP BY a.id
Я хочу получить результат:
name | gender | skill_name | skill_id
----------------------------------------------
Joe male Writing 1
Programming 2
Singing 3
Но этот код возвращает только skill_id "3" и skill_name "Singing".
Заранее спасибо.