[JPA 기본 - JPQL] 조인, ON 절

강신현·2022년 7월 27일
1

조인

1. 내부 조인

둘 이상의 테이블에 존재하는 공통 속성의 값이 같은 것을 결과로 추출

SELECT m FROM Member m [INNER] JOIN m.team t

2. 외부 조인

조인하는 여러테이블에서 한 쪽에는 데이터가 있고, 한 쪽에는 데이터가 없는 경우, 데이터가 있는 쪽 테이블의 내용을 모두 출력

SELECT m FROM Member m LEFT [OUTER] JOIN m.team t

3. 세타 조인

동등조인이면서 동시에 sql에서 join구문 없이 사용하는 것
서로 연관관계가 없다면, 그때 사용하는 방법

  • 동등 조인(equi join) : 양쪽 테이블에서 조인 조건이 일치하는 행만 가져오는 가장 일반적이고 자주 쓰는 조인
select count(m) from Member m, Team t where m.username = t.name

https://www.inflearn.com/questions/124696


ON 절

1. 조인 대상 필터링

예) 회원과 팀을 조인하면서, 팀 이름이 A인 팀만 조인

SELECT m, t FROM Member m LEFT JOIN m.team t on t.name = 'A'

2. 연관관계 없는 엔티티 외부 조인

예) 회원의 이름과 팀의 이름이 같은 대상 외부 조인

SELECT m, t FROM Member m LEFT JOIN Team t on m.username = t.name
profile
땅콩의 모험 (server)

0개의 댓글