2014-10-09 119 views
0

我有两个表:一个包含企业列表和另一个电话号码列表。加入多个结果表

我想输出第一个表中的商家列表并将第二个表与数字结合起来。我遇到的问题是,我可以为同一业务提供多个号码,因此当输出结果时,我会为同一业务获得多个记录,而不是使用多个电话记录单个业务记录。这里是我的查询:

SELECT 
    busName, 
    busAddress 
FROM business_profile 
LEFT JOIN business_numbers ON (business_numbers.num_ID = business_profile.bus_ID) 
WHERE busMemID = 33 

我想我可以运行第一查询,然后第二个下每个企业的数字,但我认为得是双方在一个结合的方式。我错过了什么。

+0

你说你有第一个和第二个查询,但我没有看到你的第二个查询在哪里 – 2014-10-09 02:00:39

回答

0

听起来像是你要使用group_concat

select bp.busname, group_concat(bn.busaddress separator ',') busaddresses 
from business_profile bp 
    left join business_numbers bn ON bn.num_ID = bp.bus_ID 
where busMemID = 33 
group by bp.busname 

这将返回一个单列为每个不同的busname,地址组合成用逗号分隔的单个字段。