Není to nijak zvlášť obtížné.
- Spojte tři tabulky pomocí klauzule JOIN.
- V polích, která vás zajímají, použijte Group_concat.
- Nezapomeňte na klauzuli GROUP BY u polí, která nezřetězujete nebo divná věci se budou dít
SELECT u.id,
u.Name,
Group_concat(us.id_sport order by pref) sport_ids,
Group_concat(s.name order by pref) sport_names
FROM users u
LEFT JOIN User_Sports us
ON u.id = us.id_user
LEFT JOIN sports s
ON US.id_sport = s.id
GROUP BY u.id,
u.Name
Aktualizovat PŘIPOJTE SE VLEVO, pokud uživatel nemá položky v User_Sports podle komentářů