有一个“联系人”列表。有些“接触者”是父母,有些是儿童。有些联系人有一个以上的孩子。有些孩子有一个以上的父母。 联系人可以是父母和孩子(大孩子)。
联系人之间的关系映射在表“parents_and_children”中。
Object.entries
查询的结果应为:
stripTags
请注意,p3是p1和p5的子项,也是p4的父项。 p5是p2的亲本,p3是p1,p6是他自己。
我不需要完整的解决方案。请告诉我方向,我将自己到达那里。到目前为止,没有任何效果。
答案 0 :(得分:0)
您可以像这样使用GROUP_CONCAT
两次:
select pnames,
group_concat(distinct cname order by cname separator ',') cnames
from (
select group_concat(distinct c1.name order by c1.name separator ',') pnames,
c2.name cname
from parents_and_children p
join contacts c1 on p.parent_id = c1.id
join contacts c2 on p.child_id = c2.id
group by c2.name
) t
group by pnames