2016-06-24 1 views
-3

문제는 테이블 연락처에서 연락처가 4 개 회사에 연결될 수 있으며 이고 연락처가 연결된 모든 회사를 표시하려고합니다.SQL 쿼리에서 여러 개의 내부 조인을 얻는 방법

select contact.Contact_id, 
     contact.Firstname, 
     contact.Abbreviation, 
     company.Company, 
     company.Company, 
     company.Company, 
     company.Company, 
     contact.Sector, 
     contact.Available 
FROM contact 
INNER JOIN company 
    ON contact.Company_id1=company.Company_id 
    WHERE available =1 
    ORDER BY Firstname ASC 
+2

내부 조인은 MySql과 동일한 방식으로 추가 할 것입니다. –

+1

PHP 태그가 계속 추가되는 이유는 무엇입니까? 이것은 PHP와 관련이 없습니다. –

+0

나는 "4 개 회사와 연결될 수있다"라는 말을 본다. 이는 내부 조인 대신 외부 조인을 사용해야 함을 나타냅니다. 따라서 연락처에서 회사로 4 회 외부 참여 (별칭 회사, 회사 2, 회사 3, 회사 4). 테이블 구조가 도움이 될 것입니다. –

답변

2

방법이 내가 지금까지 무엇을 가지고 첫 번째 내부는 좋은 작품에 참여하지만 난 내 세 이상이 가입 추가 할하지만 난 내 경험이 MySQL을 에 있기 때문에 SQL Server와 함께이 작업을 수행하는 방법을 잘 모릅니다 약

select <columns> 
from contact as ct 
join company as cy1 on cy1.company_id = ct.company_id1 
join company as cy2 on cy2.company_id = ct.company_id2 
join company as cy3 on cy3.company_id = ct.company_id2 
join company as cy4 on cy4.company_id = ct.company_id4 
+0

연락처가 모든 회사와 제휴되지 않았거나 모두가 아닌 모든 경우에 대해 개인적으로 그러한 왼쪽 조인을 만들 수 있습니다. –

+1

네, 더 좋은 방법이 있습니다. 나는 그에게 할 수있는 일에 대한 아이디어를주고 싶다. – Gabriel

+0

@ GabrielBSM이 방법을 사용하여 다루고있는 문제는 내가 여기 내 테이블의 결과로 마지막 행을 얻는 것입니다. [link] (http://imgur.com/a/XlygG) –

관련 문제