我有一个名为phone
的表,其中有一列名为names
,另一列名为number
。我有一个名为address
的第二个表,其中有一列名为family
,另一列名为address
。 family
和names
具有相同的值,但family
有一些重复。我想将这些内容加入到一个表格中,其中family
和names
为1列,然后phone
和address
为另一列。但是,由于尺寸不匹配(地址多于电话号码),我不确定这是否可行。
谢谢!
答案 0 :(得分:0)
这是你期待的吗?
Table 1
Name number
Bob 1234
Tom 3456
Table 2
family address
Bob MD
Bob NJ
Bob NY
Tom NC
Result
Name Number Address
Bob 1234 MD/NJ/NY
答案 1 :(得分:0)
假设“要使地址栏保持不变,并且每个匹配的家庭都要重复这些数字”,如同其中一条评论所述:
select
A.family, A.address, P.number
from
address A
left join phone P on A.family = P.Name
order by
A.family, A.address, P.number
FTR,如果是我,我可能会对此更感兴趣:
select
A.family,
group_concat(distinct A.address separator '\n') Address,
group_concat(distinct P.number separator ',') Phone
from
address A
left join phone P on A.family = P.Name
group by family
order by
A.family, A.address desc, P.number