2014-10-09 3 views
0

두 개의 테이블이 있습니다. 하나는 비즈니스 목록과 다른 전화 번호 목록입니다.여러 결과가있는 테이블 조인

첫 번째 테이블에서 업체 목록을 출력하고 두 번째 테이블에 숫자를 결합하려고합니다. 내가 가지고있는 문제는 동일한 비즈니스에 대해 여러 개의 번호를 가질 수 있다는 것입니다. 결과를 출력 할 때 여러 개의 전화로 단일 비즈니스 레코드를 갖는 대신 동일한 비즈니스에 대해 여러 개의 레코드를 얻을 수 있습니다. 내가 첫 번째 쿼리 및 각 사업에서 숫자 후 두 번째를 실행할 수 있다고 생각

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

,하지만 난 꼭 하나에 모두 결합 할 수있는 방법이 될 수 있다고 생각 : 여기 내 쿼리입니다. 나는 무엇이 없는가.

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에 대해 하나의 행을 반환합니다 : 당신이 group_concat를 사용하려면 같은

+0

첫 번째 및 두 번째 쿼리가 있지만 두 번째 쿼리가 어디에 있는지 알지 못했습니다. –

답변