Группировка при выборке
Как правильно реализовать такой вот вывод

есть таблица categories (id,parent) и таблица category_description - (id, category_id, language_id, name)
начал делать через Union но мало знаний
SELECT c.id, c.parent, GROUP_CONCAT(cd.name ORDER BY c.parent SEPARATOR ' > ') AS name
FROM categories AS c
LEFT JOIN category_descriptions cd ON (c.id = cd.category_id) and cd.language_id = 1
WHERE c.parent = 0
UNION ALL
SELECT t1.id, t1.parent, GROUP_CONCAT(cd.name ORDER BY t1.parent SEPARATOR ' > ') AS name
FROM categories AS t1
LEFT JOIN category_descriptions cd ON (t1.id = cd.category_id) and cd.language_id = 1
WHERE
t1.parent = c.id