mysql subselect应该显示在1个字段中

ie3xauqp  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(290)

我想在子选择的1个字段中显示多个结果。
例如:

table 1:
tbl1_ID, fistname, familyname

table 2:
tbl2_ID, carbrand

table 3 is the n:n relationship for table 1 and 2
tbl1, tbl2

表1中的人应该能够拥有几辆车(例如福特和宝马)。表2的汽车品牌当然适用于几个人。
我想在1个数据字段中列出每个人的汽车
例子:

Mueller  | Hans   | Ford,BMW

Jaeger   | Erwin  | BMW,Mercedes,Jaguar

Fritsche | Sascha | Mercedes

怎么做?我不能使用subselect,因为它只允许一个结果。而且,左连接不起作用,因为我只想给每个人显示一次。
谢谢!先生

byqmnocz

byqmnocz1#

您可以使用groupconcat,并且应该在基于表3和groupby的两个相关表之间使用内部联接

select a.familyname, a.fistname,  group_concat(b.carbrand)
from  table_3 c
inner join table1 a on c.table1_id = a.table1_id 
inner join table2 b on c.table2_id = b.table2_id 
group by a.familyname, a.fistname

相关问题