JPQL 조인
내부조인
select m from Member m [Inner] Join m.team t
외부조인
select m from Member m left[outer] join m.team t
세타 조인
select count(m) from Member m , Team t where m.username = t.name
정말 연관관계가 없는 엔티티 둘을 조인한다.
sql과의 차이점은 엔티티를 중심으로 쿼리가 작성된다는것.
ex)
member와 team 을 join 이때 다대일 관계에 fetch = FetchType.LAZY를 없애준다.
Team team = new Team();
em.persist(team);
Member member = new Member();
member.setTeam(team);
em.persist(member); // cascade조약으로 team도 영속성이 된다.
String query =
"select m from Member m inner join m.team t";
"select m from Member m left outer join m.team t"
막(전부 교차 , 세타) join , join 할 엔티티를 전부 명시
"select m from Member m , Team t where m.username = T.name"
from절에 없는 엔티티와 join하는걸 그렇게 말한다.
아무거나 막 써서 조인시킨다는 의미
'JPA' 카테고리의 다른 글
2월 14일 JPA JPQL 서브쿼리 (0) | 2023.02.14 |
---|---|
2월 13일 JPA 조인 On절 (0) | 2023.02.13 |
2월 13일 JPA JPQL 페이징 API (0) | 2023.02.13 |
2월 13일 JPA JPQL 프로젝션(받는값 매핑) (0) | 2023.02.13 |
2월 13일 JPA JPQL(java persistence query language) (0) | 2023.02.13 |