2013-06-07 4 views

답변

3

사용 in 대신 =를 얻을 도와주세요 성능을 향상시키고 달성하려는 목표를 분명히하지 않습니다. 일반적으로 쉽게 읽을 수있는 일련의 간단한 조인으로 변환 할 수 있습니다.

select c.* 
from customer c 
inner join Asset a on c.cust_acnt_nbr = a.cust_acnt_nbr 
inner join dstrct d on d.dstrct_id =a.dstrct_id 
where dstrct_nm = 'ATLANTA' 
+0

내가 HQL로 변환하면 이것이 맞습니까? '고객 cust_acnt_nbr 어디 dstrct_id dstrct_id dstrct_id에서 dstrct_nm = 'ATLANTA') 선택) 자산에서 cust_acnt_nbr 선택 (어디에서 자산) –

1

:

select * from customer where cust_acnt_nbr = (select cust_acnt_nbr from Asset where dstrct_id = (select dstrct_id from dstrct where dstrct_nm = 'ATLANTA'))

하는 하위 쿼리가 여러 행을 반환 할 수있는 경우 나 고객 목록을

관련 문제