我想要的是拥有所有祖父的清单,每个祖父都有一个名为grandsons_names的字段,这是所有孙子名字的csv。父亲的名字不会出现在任何地方。
这是我尝试解决问题的方法:
SELECT grandfathers.*, group_concat(sons.name)
FROM grandfathers
LEFT JOIN fathers ON grandfathers.id == fathers.grandfather_id
LEFT JOIN sons ON fathers.id == sons.father_id;
问题是..只有一个祖父出现,因为聚合发生在错误的地方..如何解决这个问题?
感谢
答案 0 :(得分:1)
你有没有尝过这个?
SELECT grandfathers.*, group_concat(sons.name)
FROM grandfathers
LEFT JOIN fathers ON grandfathers.id = fathers.grandfather_id
LEFT JOIN sons ON fathers.id = sons.father_id
GROUP BY grandfathers.id;