2017-12-12 24 views
0

hql을 사용하여 일부 쿼리에서 일부 값을 반환하는 쿼리를 원합니다.내부 조인을 자동으로 수행하여 정렬

문제는 내가 order by 자동으로 내부 결합을 수행 할 때입니다. 예 :

표 사용자 선호도가 열이 idAssociado :

select u.nome 
from Usuario u 
order by u.associado desc, 
     u.associado.suspended asc, 
     u.associado.dateOut asc 

심지어 열 associado (ID) 사용자 선호도에서 모든 레코드를 반환 할이 null이지만, 먼저 중단에 의해 주문 null가 아닌 사람들을 데려 및 dateOut.

내가 order by suspended and dateOut 인 경우 내부 조인을 수행하고 Usuarios where u.associado is not null 만 반환합니다.

예상 결과와 함께이 hql을 어떻게 수행 할 수 있습니까? 클래스에 속성이 POJO 객체 인 경우

감사

+0

'경우 u.associado.dateOut'도 할 수 없습니다 유효한 참고 자료가되어야한다. –

+0

그래, 무슨 일인지 알지만,이 시나리오에서 예상되는 결과를 보관하는 법을 모릅니다. – Emerick

답변

1

HQLINNER JOIN 작업을 수행합니다.

Usuario 클래스에는 Associado 유형의 associado 속성이있을 수 있습니다.

그래서 associosa 객체의 캡슐화 된 속성을 가리킬 때 HQL이 INNER JOIN을 적용합니다.

associado가 null 인 경우 모든 usuario 객체를 원한다면 associosa의 캡슐 정보에 대한 정보로 주문하는 이유는 무엇입니까? 나를 위해

, 당신이 될 것입니다 조회 :`u.associado`는 다음`u.associado.suspended` 열에 대한 유효한 참조이다

select u.nome 
from Usuario u 
where u.associado is null 
+0

나는 null도 아닌 사람들을 원한다. 어쨌든 ... 어떻게 sktrech에서 시작하여, 나는 u.associado.suspended와 u.associado.dateOut에 의해 정렬 된 데이터를 반환 할 수 있는가? 내 요점은 당신이 이러한 itens 주문 주문, 그것은 자동으로 아닌 null 값을 제거하는 ... 나는 이유를 이해하지만 어떻게 해결할 수 있습니까? – Emerick