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