작성
·
158
0
안녕하세요 질문있습니다^^
예시로 queryDsl로 할 수 없는 상황에서
jpql을 사용하려는데
다중 left join 을 건다면 속도 저하가 심하게 발생하나요??
아래는 필요한 데이터들만 가져오려고 제가 짠 jpql 쿼리 입니다
기존에 5천건을 조회하는데 1분이상이 걸려 수정중에 있는데
(불필요한 join으로 전체 탐색, 연관관계없는 매핑값을 가져오기 위한 이중 for문 남발 문제가 있었음)
이렇게 다중 join을 사용하는 것이 속도 개선에 더 나을지...질문드립니다
감사합니다.
select
d.review_id as review_id
, d.content as content
, d.created_at as created_at
, d.ip as ip
, d.meeting_at_end as meeting_at_end
, d.meeting_at_start as meeting_at_start
, d.meeting_method as meeting_method
, d.nickname as nickname
, d.status as status
, d.subject as subject
, d.updated_at as updated_at
, d.user_id as user_id
, d.view_cnt as view_cnt
, c.name as club_name
, c.meeting_method as meeting_method
, f.file_id as file_id
, f.file_name as file_name
, f.file_path as file_path
, f.file_url as file_url
, f.file_size as file_size
, p.history_id as history_id
, p.details as details
, p.fkey as fkey
, p.point_type as point_type
from tb_debate_review d
left join tb_club c on d.club_id = c.club_id
left join tb_book_of_the_month m on d.book_id = m.book_id
left join tb_point_history p on d.review_id = p.fkey
left join tb_debate_review_file f on d.review_id = f.review_id
;