2014-11-18 2 views

답변

0

이 아래와 같이 tbl_country 두 번 뭔가에 합류 필요로 레코드를 가져올 테이블 열 CID와 tbl_country 국가

난의 Wnt 있습니다. 이 쿼리는 inner join을 사용하므로 bcowco은 일치하는 레코드가 country 테이블에 있어야하며, 그렇지 않으면 left join을 대신 사용하십시오.

select 
e.name, 
c1.country as Bco, 
c2.country as WCO 
from tbl_employee e 
join tbl_country c1 on c1.cid = e.bco 
join tbl_country c2 on c2.cid = e.wco 
0
SELECT tbl_employee.id,tbl_employee.name,tbl_country.countryName 
    as BCO,tbl_country.countryName as WCO 
FROM tbl_employee 
LEFT JOIN tbl_country ON tbl_country.id = tbl_employee.bco 
RIGHT JOIN tbl_country ON tbl_country.id = tbl_employee.wco 
0

이 시도 :

SELECT tbl_employee.name AS name, lookup_bco.country AS Bco, lookup_wco.country AS WCO 
FROM tbl_employee 
INNER JOIN tbl_country AS lookup_bco ON tbl_employee.bco = lookup_bco.cid 
INNER JOIN tbl_country AS lookup_wco ON tbl_employee.wco = lookup_wco.cid 
+0

좋은 발언 다음과 같다 해결 힘내 '쿼리가 내부 사용하고 있습니다 그래서 BCO 및 WCO 모두 가입 국가 테이블에서 일치하는 레코드를 가져야합니다. 그렇지 않으면 대신 왼쪽 결합을 사용하십시오. ' – Eddy

관련 문제