JPQL: fetch join - 컬렉션 페치 조인, 페치 조인 특징과 한계, 페이징
컬렉션 페치 조인(데이터 뻥튀기 조심하라) 일대다 관계를 가정해보자. 현재 팀A에 멤버가 두명 속해있다. 이때 테이블을 조인하면 테이블이 아래와 같아진다. 따라서 DB에서 결과가 두줄이 날라온다... SQL을 아는 사람이라면 DISTINCT 요소로 중복을 제거할 수 있을 것이라는 생각이 들 것이다. 근데 SQL의 DISTINCT는 컬럼의 모든 값이 일치해야 중복으로 처리되어 제거된다. 이 경우 Member의 Id와 Name이 다르다. 하지만 JPQL의 DISTINCT는 추가 기능을 제공한다. SQL에 DISTINCT를 추가할 뿐만 아니라 애플리케이션에서 엔티티 중복을 제거한다. 따라서 JPQL에서는 같은 식별자를 가진 Team 엔티티를 퍼올릴때 중복을 제거한다. 페치 조인과 일반 조인의 차이 "selec..
2022.04.04