首页 > 解决方案 > 将其他表中的多行合并为mysql中的1列

问题描述

我有两张桌子

table1

|---------------------|------------------|------------------|
|      student_id     |   studentname    |     parentid     |
|---------------------|------------------|------------------|
|          1          |       Kobe       |        1         |
|---------------------|------------------|------------------|
|---------------------|------------------|------------------|
|          2          |      Lebron      |        1         |
|---------------------|------------------|------------------|


table2
|---------------------|------------------|
|       parentid      |    parentname    |   
|---------------------|------------------|
|          1          |      Jordan      |
|---------------------|------------------|

我想选择这样的输出

result
|---------------------|------------------|------------------|---------------- 
--
|       parentid      |    parentname    |    childrenid    |  childrenname
|---------------------|------------------|------------------|------------------
|          1          |      Jordan      |     1,2          |  Kobe,Jordan
|---------------------|------------------|------------------|------------------

这可能发生吗?提前谢谢我已经使用了这个查询但是行是重复的

select * from table2 left join table1 ON table1.parentid = table2.parentid

标签: mysql

解决方案


不,这是不可能的,您必须使用左连接,这将导致两行,一个用于 Kobe,另一个用于 Lebron。


推荐阅读