2013-03-15 3 views
0

이 테이블 가입 :내가 다음과 같이 3 개 테이블이

Table Name : 
------------ 
UserList    

Column Name 
------------- 
DealerID  DealerUserID 

AAA    111 
AAA    222 
AAA    333 
BBB    111 
BBB    444 
CCC    111 
CCC    555 

을 -

Table Name : 
------------ 
UserInfo   

Coulmns 
-------- 
DealerUserID Name  
111    John   
222    James 
333    Dany 
444    Daniel 
555    Romie 

-

Table Name : 
------------ 
CarPermitted  

Coulmns 
-------- 
DealerID  DealerUserID 

AAA    111 
AAA    222 
BBB    111 
CCC    111 

나는 쿼리의 아래로 결과을 할 다음과 같이 입력됩니다.

DealerID 0

는 = AAA

Name DealerUserID AllowedStatus 

John 111   true 
James 222   true 
Dany 333   false 

나는 많은 아래와 같은 조인 시도,하지만 내 원하는 결과를 얻을 수 없었다. 어떤 제안이라도 어떻게 얻을 수 있습니까? 그것은 표시 :

주 ..

테이블 사용자 목록에서 DealerID 및 DealerUserID의 조합이 잘못된 것 CarPermitted /// 나머지에 존재하는 경우

AllowedStatus는 I만큼 인출 할 필요 값인 모든 dealeruserId 여기에 하나 개의 대리점

+0

'AllowedStatus' 열이 속한 테이블을 지정하지 않았습니다. – varnie

+1

@James 허용되는 상태는 어떻게 받습니까? – Alex

+0

AllowedStatus -이 문제는 나에게 문제를 일으키는 것입니다.이 값을 동적으로 가져와야합니다. – James

답변

1

당신은 내가 당신이 허용 상태가 기록 허용에있는 경우에서 온다, 코멘트에서 잘못된

가고 있었다 방법을 말할 수 있도록 당신은 당신의 쿼리를 표시하지 않습니다, 이동에 속한다 테이블

SELECT UF.Name, UF.DealerUserID, 
     CASE P.DealerID IS NULL THEN 'false' ELSE 'true' END AS AllowedStatus 
FROM UserList UL 
JOIN UserInfo UF ON UL.DealerUserID = UF.DealerUserID 
LEFT JOIN CarPermitted P ON UL.DealerUserID = P.DealerUserID AND UL.DealerID = P.DealerID 
WHERE UL.DealerID = 'AAA' 
+0

오류가 발생했습니다. '사례가있을 때 .DealerID가 NULL입니다.'거짓 'ELSE'참 'END AS AllowedStatus' – Sergio

+0

@Sergio - 좋은 지적입니다. – Hogan

관련 문제