Если иерархия имеет только два уровня, это вполне возможно сделать в MySQL 5.6, так что вы хороши как есть (если бы у нее было переменное количество уровней, вам понадобился бы MySQL 8.x).
Я бы использовал следующий запрос:
select
p.id,
p.sku,
p.name,
'grouped' as product_type,
group_concat (concat(c.id, '=0.0000') order by c.id) as associated_sku
from product p
join product c on c.parent_id = p.id
group by p.id, p.sku, p.name
union all
select
id,
sku,
name,
'simple' as product_type,
null as associated_sku
from product
where parent_id is not null
Примечание : в этом запросе предполагается, что значение parent_id
пусто в родительских строках.