Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.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
Php mysql-来自桥接表的多对多查询_Php_Mysql_Group By_Many To Many_Aggregate Functions - Fatal编程技术网

Php mysql-来自桥接表的多对多查询

Php mysql-来自桥接表的多对多查询,php,mysql,group-by,many-to-many,aggregate-functions,Php,Mysql,Group By,Many To Many,Aggregate Functions,我有一项任务要完成。这是一种多对多的关系。这张桥台是做出来的,看起来像 left id right id +----------+---------+ | 1 | 1 | | 1 | 2 | | 2 | 1 | | 2 | 2 | | 2 | 8 | | 3 | 1 | | 3 |

我有一项任务要完成。这是一种多对多的关系。这张桥台是做出来的,看起来像

    left id     right id
  +----------+---------+
 |        1 |       1 |
 |        1 |       2 |
 |        2 |       1 |
 |        2 |       2 |
 |        2 |       8 |
 |        3 |       1 |
 |        3 |       2 |
 |        3 |       4 |
 |        4 |       1 |
 |        4 |       2 |
 |        4 |       3 |
 |        4 |       5 |
 |        5 |       1 |
 |        5 |       2 |
 |        5 |       4 |
 |        5 |       6 |
 |        5 |       7 |
 +----------+---------+
我必须在一行中显示左id=右id 比如说

for left id 1
left1 | right1 righ 2
for left id 3
left3 | right1 right2 right 4

我该怎么做?我已经尝试连接表,但不起作用

我想您可以使用GROUP BY和GROUP_CONCAT()使用一个简单的查询来实现这一点


我认为您可以使用GROUP BY和GROUP_CONCAT()使用一个简单的查询来实现这一点


这是
GROUP_CONCAT()
GROUP BY
的一个相当简单的应用程序。()


这是
GROUP\u CONCAT()
GROUP BY
的一个相当简单的应用程序。()


正如我所回答的:)非常感谢。我真的很感谢你的帮助,正如我回答的那样:)非常感谢。我真的很感谢你的帮助,非常感谢。我真的很感谢你的帮助,非常感谢。我真的很感谢你的帮助
SELECT left_id, GROUP_CONCAT(right_id SEPARATOR ' ') as rigth_id 
FROM left-right 
GROUP BY left_id;
SELECT leftId, 
       GROUP_CONCAT(rightId ORDER BY rightId) rightIds
  FROM bridge
 GROUP BY leftId