실전! Querydsl

Ch02. 기본 문법 - 서브 쿼리

webmaster 2021. 12. 30. 15:01
728x90

com.querydsl.jpa.JPAExpressions 사용

서브 쿼리 eq

서브쿼리 EQ
서브쿼리

서브 쿼리 goe

서브쿼리 GOE
서브쿼리 goe

서브쿼리 in

서브쿼리 In
서브쿼리 IN

 서브쿼리 select

select절의 서브쿼리

From 절의 서브 쿼리 한계

  • JPA JPQL 서브쿼리의 한계점으로 from 절의 서브쿼리(인라인 뷰)는 지원하지 않는다. 당연히 Querydsl 도 지원하지 않는다. 하이버네이트 구현체를 사용하면 select 절의 서브쿼리는 지원한다. Querydsl도 하이버네이트 구현체를 사용하면 select 절의 서브 쿼리를 지원한다.
  • from 절의 서브쿼리 해결방안
    • 1. 서브쿼리를 join으로 변경한다. (가능한 상황도 있고, 불가능한 상황도 있다.)
    • 2. 애플리케이션에서 쿼리를 2번 분리해서 실행한다.
    • 3. nativeSQL을 사용한다.
728x90