인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

Inflearn Community Q&A

ddoddo's profile image
ddoddo

asked

Java ORM Standard JPA Programming - Basics

Fetch Join 1 - Basic

책 p.379 패치조인과 일반조인의 차이 질문

Written on

·

201

1

SELECT t FROM Team t 

    JOIN  t.members m

    WHERE t.name = '팀A'  

SELECT절에 프로젝션한 엔티티만 조회하기 때문에 위 JPQL로는 Member 엔티티에 대한 정보는 얻을 수 없다는 것을 이해했습니다. 

그러나, SELECT t, m FROM Team t JOIN t.members m 으로 SELECT절에 m도 명시를 해주면 Fetch조인을 명시한 것과 동일한 결과를 낼 수 있다고 생각합니다. 

즉, 위의 방법으로도 p.377의 그림10.8의 구조와 동일하게 영속성컨텍스트에 엔티티들을  얻을 수 있는게 아닐까요..?

javaJPA

Answer 1

2

yh님의 프로필 이미지
yh
Instructor

안녕하세요. ddoddo님^^

제가 답을 바로 드리면 더 많은 것을 얻으실 수 없으니, 답을 찾는 방법을 알려 드리겠습니다^^!

어떤 점 때문에 동일한 결과가 나온다고 생각하시는지요?

해당 부분을 직접 코드로 테스트하고, 둘의 쿼리 차이를 비교하고, 조회된 객체의 데이터 상태의 차이도 모두 비교해서 정리해보시면, 둘의 차이를 더 깊이있게 더 많이 이해하실 수 있을거에요.

꼭 정리해서 남겨주세요^^!

감사합니다.

ddoddo's profile image
ddoddo

asked

Ask a question