count1 Hibernate - setResultTransformer 주의 (조인 테이블 row count 구하기) 주어진 상황은 1:N(nullable) 관계의 A와 B란 두 테이블을 조인하여 특정 조건을 만족하는 A의 row의 수를 구하는 것 입니다. 특정 조건은 A의 조건일 수도 있고 B의 조건일 수도 있습니다. 이런 경우 A 주체의 왼쪽 외부 조인을 사용하게 됩니다. B 테이블과 관계를 맺지 않은 A의 레코드에서도 조건을 만족할 수 있기 때문입니다. 이 쿼리는 중복된 A의 레코드를 생기게 합니다. 그래서 중복을 제거하여야 합니다! 중복을 제거하는 방법으로 많이 사용되는 Hiberante 코드는 setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY)입니다. Projection으로 인한 요소버림없이 전체 데이터를 쉽게 가지고 올 수 있기 때문입니다. 그러.. 2016. 10. 5. 이전 1 다음