2013-02-11 1 views
0

은 아마 이것에 대해 밀도있는거야하지만 쿼리가 내가 기대하고있어 결과를 반환하지 않습니다 예상대로 작동하지 NamedQuery는 javax.persistence 내가 두 테이블 (개체)가</p> <p>...

속성은 Id, propertyRef 및 landLordsid (집주인 테이블에 대한 다 대일 조인) 필드로 구성됩니다.

지주는 필드 (다른 사람들)로 구성됩니다 : Id, landlordName 및 조인을위한 일대 다 컬렉션.

정수 매개 변수 'landLord'를 통해 전달 된 것과 같이 집주인에 대한 모든 속성을 반환하는 쿼리를 원합니다. 매개 변수가 2이면 Properties.landLordsid가 2 인 필터를 만듭니다. 현재 사용중인 NamedQuery이지만 모든 속성을 반환하고 필터링하지 않습니다.

SELECT p 
from Properties p 
JOIN p.landLordsid l 
WHERE l.id = :landLord 

어떤 아이디어가 잘못된가요?

답변

0

는 최대 절전 모드 당신을 위해 가입하자 :

이 HQL 작동합니다 : 암시 조인도 암시 "* 선택"그 방법

from Properties p 
where p.landLord.id = :landLord 

참고.

+0

도움 주셔서 감사합니다 보헤미안. 이전 쿼리에서 Map의 잘못된 복사본을 응용 프로그램 클라이언트에 전달했기 때문에 결과가 변경되지 않았습니다. 그러나 적어도 지금은 조인과 선택이 함축되어 있다는 것을 알게되었습니다. –

+0

'p.landLord = : landLord' 또는'p.landLord.id = : landLordId'라고 쓰면 더 명확한 예가 될 것입니다. 개인적으로 나는 이전을 선호합니다. – carbontax

관련 문제