Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql SQL:将子表中的记录连接到单个记录中_Mysql_Sql - Fatal编程技术网

Mysql SQL:将子表中的记录连接到单个记录中

Mysql SQL:将子表中的记录连接到单个记录中,mysql,sql,Mysql,Sql,有两个表具有1:M关系。 连接输出应有2列: 第1列-来自父表和 第2列I是子表中所有相关记录的串联。 输出中的记录总数应为父表中的记录总数。 数据库:MySQL 例如: Parentid主键,parent\u名称 子id主键,父id FK,子id名称 Parent: | id | parent_name ——————------------ | 1 | Smith | 2 | David Child : id | parent_id | child_name ——————————————

有两个表具有1:M关系。 连接输出应有2列: 第1列-来自父表和 第2列I是子表中所有相关记录的串联。 输出中的记录总数应为父表中的记录总数。 数据库:MySQL

例如:

Parentid主键,parent\u名称

子id主键,父id FK,子id名称

Parent: | id | parent_name ——————------------ | 1 | Smith | 2 | David Child : id | parent_id | child_name ———————————————--------------- 1 | 1 | Anna 2 | 1 | Linda 3 | 2 | Maria 4 | 2 | Michael Expected join result: parent_name | child_name ——————------|——————— Smith | Anna, Linda David | Maria, Michael
你需要小组讨论。试试这个-

SELECT P.parent_name, GROUP_CONCAT(C.child_name)
FROM Parent P INNER JOIN Child C
ON P.id = C.parent_id
GROUP BY P.parent_name
希望这有帮助

Select pr.parent_name,group_concat(ch.child_name) 
from parent pr join child ch 
where pr.id = ch.parent_id 
group by pr.parent_name;
groupconcat是MySQL中的函数。你可以用这个

试一试: