根据我对MySQL的最佳了解,在这种情况下,不可能的想法会有所帮助。
我们希望select
父表中的记录和concat(类似的东西)select
中的子行。这里明显错误的MySQL,但说明我们想要实现的目标。
SELECT parentattr,
CONCAT (
SELECT name
FROM child
WHERE child.parentId = parent.id)) as allchildernames
FROM parent
答案 0 :(得分:1)
您还需要GROUP BY
,而且您需要准确指定要连接的名称。
SELECT parentattr1, parentattr2, GROUP_CONCAT(c.name ORDER By c.name)
FROM parent p
LEFT JOIN child c ON parentId = c.id
GROUP BY parentattr1, parentattr2
答案 1 :(得分:0)
尝试使用GROUP_CONCAT(),这里是examples。
在parent.id之后你还有一个额外的)
。
答案 2 :(得分:0)
试试这个
SELECT parentattr, GROUP_CONCAT(child.name SEPARATOR ', ') as allchildernames
来自父母,孩子 其中child.parentId = parent.id 由parent.id分组