Funkce, kterou hledáte, je GROUP_CONCAT
. Viz dokumentace:
http://dev.mysql .com/doc/refman/5.7/en/group-by-functions.html#function_group-concat
Ve vašem příkladu můžete vytvořit ještě jeden poddotaz (příklad níže). Nebo JOIN
standardním způsobem k původnímu dotazu.
...
(
SELECT GROUP_CONCAT(gtp.id)
FROM game_table_players gtp
LEFT JOIN game_rounds gr ON gr.id = gtp.game_round_id
WHERE gt.id = gtp.game_table_id
AND gtp.quit<>1 AND gr.finish=0
) AS players,
...
Všimněte si komentáře k NULL
zpracování v GROUP_CONCAT
. Pokud chcete zobrazovat nuly, když nejsou přítomni žádní hráči, možná budete chtít použít COALESCE(GROUP_CONCAT(gtp.id), 0)
místo toho.