20.07.16 11:06 작성
·
189
0
안녕하세요.
강의 내용과 관련이 없을 수도 있는 질문일것 같아서 관련 없다고 판단되시는 경우 답변 안주셔도 됩니다. ^^
저희 회사에서 검색한 결과에 다른 연관된 테이블의 건수 등을 포함해서 보여주고 싶고, 그 건수로 정렬을 하고 싶다고 하는데
저는 당장 드는 생각이 서브쿼리로 조인하는 것 밖에 생각이 안나더라구요.
찾아보니 이건 안된다고 하던데 어떻게 다른 해결 방법은 없을까요?
A 테이블이 있고, 일대다 관계인 B 테이블있는데..
A테이블 검색 시 B 테이블의 건수를 조회하고, B 테이블의 건수로 정렬을 하고 싶습니다.
알려주실 수 있는 다른 방법이 없을까요? 답변 부탁드립니다.
감사합니다.
답변 4
1
1
2020. 07. 20. 01:14
JPA를 사용할 때 주로 데이터를 저정하거나 변경하는 핵심 비즈니스 로직에는 JPA가 잘 적용되고, 코드도 깔끔하게 나오지만 복잡한 조회성 쿼리에는 네이티브 쿼리도 가끔 필요합니다^^
제가 권장하는 방법은 그냥 이럴 때는 너무 복잡하게 생각하는 것 보다, 네이티브 쿼리를 쓰시는게 좋습니다^^
1
2020. 07. 16. 22:38
안녕하세요. 이동환님^^ 좋은 질문입니다.
이 케이스는 from 절의 서브쿼리인 inline view를 사용해야 할꺼에요.
JPA에서 from절의 서브쿼리를 지원하지 않기 때문에 이 부분은 네이티브 쿼리를 사용해야 합니다.
감사합니다.
0
2020. 07. 19. 15:25
답변 주셔서 정말 감사합니다.
현재 네이티브 쿼리로 처리를 해 놓긴 했는데... 소스를 보고 있으니 "아... 이럴려고 JPA랑 QueryDSL쓰는게 아닌데.. " 하는 생각이 많이 드네요. ㅠㅠ
되는지는 잘 모르겠지만 뷰를 생성해서 뷰를 Entity로 등록하는것도 생각중입니다. (가능할지 모르겠지만요)
요거 안되면 통계용 테이블을 별도로 만들어 배치 처리도 생각중입니다.
강의와 직접적인 관련이 없는 질문 드려서 죄송하구요. 답변 감사합니다.