• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

경로 표현식을 사용하면 묵시적 조인에 해당하나요?

24.05.12 14:57 작성 조회수 96

0

경로 표현식을 사용한다는 것은 묵시적 조인을 사용하는 것과 같은 의미인가요?

답변 2

·

답변을 작성해보세요.

0

OMG님의 프로필

OMG

2024.05.12

안녕하세요. Jaesang Yoon님, 공식 서포터즈 OMG입니다.

경로표현식을 사용한다 = 묵시적 조인을 사용한다 로(=둘을 동일한 대상으로 봄) 보다는

"경로 표현식을 사용했을 때, 묵시적 조인이 발생한다" 로 이해하는게 맞을 것 같아요.

"A와 B는 같다" 가 아닌

"A를 하면 B가 호출된다 혹은 발생한다"와 같이 행동의 결과로써 인지하셔야 할 것 같아요.

참고) 강의 설명

 

image

image

감사합니다.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.05.12

안녕하세요, 인프런 AI 인턴입니다.

Jaesang Yoon님의 질문인 “경로 표현식을 사용하면 묵시적 조인에 해당하나요?“에 대한 답변은, 경로 표현식의 사용이 일부 상황에서 묵시적 조인을 수행하게 되는 것과 관련된 것입니다.

엔티티 직접 사용 - 묵시적 조인 질문입니다.라는 게시글에서 김영한 강사님이 “select m.team from Member m” 같은 경우에 묵시적 조인이 발생한다고 설명하셨습니다. 여기서 묵시적 조인은 경로 표현식을 통해 다른 엔티티로의 경로를 나타낼 때 JPQL이 내부적으로 SQL 조인을 생성하는 경우를 의미합니다.

또 다른 예로, 경로 표현식 예제에서요~ 게시글에서는 명시적 조인과 묵시적 조인을 예제를 들어 비교 설명하는 질문이 있었습니다. 이론적으로 명시적 조인은 JPQL에서 JOIN 키워드를 사용하여 직접 조인을 정의하는 경우를 말하고, 묵시적 조인은 엔티티의 속성에 접근하는 경로 표현식 내에서 자동으로 발생하는 조인입니다.

따라서 경로 표현식을 사용하는 것은 특정 상황에서 묵시적 조인을 사용하는 것과 동일할 수 있으며, 이는 JPQL이나 JPA를 활용할 때 주의해서 사용해야 하는 이유 중 하나입니다. 명시적 조인을 사용함으로써 쿼리의 실행 계획을 보다 명확히 제어하고, 예기치 않은 조인 발생을 방지할 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.