2
나는 Carity를 말하기 위해 OneToMany 관계를 가진 Entity A say Car를 가지고있다.QueryDSL 페이징 중복 정렬
Page<T> findAll(Predicate predicate, Pageable pageable);
내가 페이징 변수에 정렬을 정의, 나는 결과를 정렬 곳 CarProperty의 열을 기준으로, 쿼리를 실행하기 위해 노력하고있어 :
내 자동차 저장소 페이징 및 정렬을 지원하기 위해 QueryDslPredicateExecutor를 확장 . 그러나 Car와 CarProperty 사이의 일대 다 관계이므로 Car의 중복을 반환했습니다. 이 구조를 사용하여 자동차에서 별개의 결과를 얻을 수 있습니까? 는 술어에 뚜렷한 사용할 수없는 경우
, 내가 술어에서 다음 쿼리를 나타낼 수있는 방법 (사용하여 중복을 제거하기 위해 존재) : 사전에
SELECT Car.*
FROM Car C LEFT JOIN CarProperty CP ON (C.ID = CP.CAR_ID)
WHERE EXISTS (SELECT 1
FROM CarProperty CP2
WHERE CP2.CAR_ID = C.ID AND CP2.ID = CP.ID)
ORDER BY CP.PROPERTY_NAME ASC;
감사를