Home ✨TIL - Query Dsl에서의 서브쿼리
Post
Cancel

✨TIL - Query Dsl에서의 서브쿼리



초기 요구사항에 맞게 작성되어있던
Query Dsl로 구현되있는 카운트 쿼리에 새로운 조건이 많이 추가 되었다. from 절에 서브쿼리가 들어간 쿼리로 변경해야한다.

잘 되지 않는 탓에 어려움을 겪고 있었다.
그러다 원래 Query Dsl 에서는 from 절에 서브쿼리를 작성할 수 없다는 글들을 찾게되었다. 🫢

현재 프로젝트에서 사용하고 있는 hibernate 버전은 5.대의 버전이다. from 절에 서브쿼리를 사용하지 않는 쿼리로 변경하여 같은 결과를 도출할 수 있는지 먼저 시도한 해보고, 6.1부터는 사용이 가능하다고 해, hibernate 버전을 변경하는 것으로 시도해 보려한다.

gpt 로 부터 from 절에 서브쿼리를 제거하여 변형한 쿼리를 도출했고,
날짜 조건을 변경하면서 원래 쿼리와 일치하는지 확인하였다.
이제 이 쿼리로 일단 코드를 완성하려한다.

멀티모듈이 구성되어있는 운영중인 프로젝트라 변경이 쉽지 않다.
hibernate 6.1 부터 변경사항이 좀 있어 다른 코드가 작동하지 않을 수 있다고 한다.
버전 업으로 다른 코드에 영향을 줄 수 있고,
직접 모든 코드를 테스트하기 어려운 상황에서 버전업은 위험하다고 판단된다.
그리고 굳이 from 절에 서브쿼리를 넣지 않고 좀더 최적화한 간단한 코드로 구현도 가능해
새로 얻은 쿼리로 구현하기로 결정한다.



This post is licensed under CC BY 4.0 by the author.