Fetch
[JPA] 일반 Join과 Fetch Join의 차이
Spring Data JPA(이하 줄여서 JPA)를 사용하다보면 연관 관계 맵핑이 된 엔티티를 사용하면서 N+1의 문제를 마주하고는 합니다. 예를 들어 우리가 보통 DB에서 연관 맵핑 관계를 볼때는 join 문을 사용해서 쿼리를 만들지만 이상하게 JPA repository로 엔티티를 호출하면 연관된 맵핑만큼 select 쿼리가 만들어집니다 바로 N+1번 쿼리가 진행되는것이죠. 이때 보통 아래 코드처럼 fetch join 이 들어간 JPQL 코드를 작성해서 문제를 해결합니다 @Query("SELECT distinct t FROM Team t join fetch t.members") public List findAllWithMemberUsingFetchJoin(); 왜 일반 join으로는 해결을 못할까요? ..