JPQL의 그룹함수는 COUNT, MAX, MIN, SUM, AVG로 SQL 그룹함수와 별반 차이가 없다.
주의 사항
그룹함수의 반환 타입은 결과 값이 정수면 Long, 실수면 Double로 반환한다.
값이 없는 상태에서 count를 제외한 그룹 함수는 null이되고, count만 0이된다.
반환 값을 담기 위해 선언하는 변수 타입을 기본 자료형으로 하게되면, 조회 결과를 언박싱할 때 NPE가 발생한다.
그룹 함수의 반환 자료형은 Long or Double 형이기 때문에 Having 절에서 그룹 함수 결과값과 비교하기 위한 파라미터 타입은 Long or Double로 해야한다.