mysql과 oracle로 페이징 처리를 하면서 느꼇던 불편함을
JPQL을 사용하면 간단하게 처리가 가능하다.
회원 테이블에서 나이 오름차순으로 50번째부터 100명을 가져오는 경우
우선 oracle을 예로 들면
1. 회원테이블을 나이 asc로 정렬
2. 정렬한 데이터에서 150명을 필터링
3. 필터링 된 데이터에서 50번째 미만은 다시 필터링
이렇게 일련의 과정을 거치는 데 쿼리가 3중으로 구성된다.
하지만 JPQL로 개발하면
이렇게 간단하게 가능하다.
실제 실행되는 쿼리는 설정되어있는 db에 맞춰 변환되며
오라클의 경우

이렇게 변환되어 실행된다.
'PROGRAMMING > JPA' 카테고리의 다른 글
| [JPQL] 묵시적&명시적 조인 (0) | 2021.12.05 |
|---|---|
| [JPQL] Enum 타입 파라미터 바인딩 (0) | 2021.12.04 |
| [JPQL] JPQL과 기본문법 (0) | 2021.12.01 |
| [JPA] Entity Manager & Entity Life Cycle (0) | 2021.11.18 |
| [JPA] 고아 객체 (Orphan Entity)와 orphanRemoval (0) | 2021.09.12 |