집합함수 집합함수는 다음과 같은 특징이 있습니다. 집합함수는 값을 계산해서 하나의 값으로 반환하는 함수입니다. 보통 group by 자주 같이 사용됩니다. where 절에서 바로 사용할 수 없기 때문에 group by 이후에 having 또는 서브쿼리를 사용합니다. 함수 리턴타입 설명 count Long 개수를 구함 max, min Long 최대, 최소값 구함 avg Double 평균 구함 sum Long 합 구함 ▼ 예제의 Player 엔티티는 Team 엔티티와 관계하고 있습니다. ▼ max, min, avg, sum은 해당 값이 존재하지 않는 경우 null을 값으로 리턴합니다. 다음과 같이 TypedQuery를 생성해서 getSingleResult() 메서드를 실행하면 각각 salary의 평균과 최고..
JPA를 사용하면서 JQPL 로 쿼리를 작성했는데 다음과 같은 에러 문제를 겪었습니다. GROUP BY 명령을 실행할 때 MySQL 5.7 이상 버전 부터는 sql_mode 옵션을 변경해줘야 합니다. GROUP BY clause; this is incompatible with sql_mode=only_full_group_by 오래된 데이터베이스에서는 문제없이 동작하는 코드 였는데 새로운 MySQL 을 도커로 설치하고 실행하니 문제가 되어서 찾아보았습니다. only_full_group_by 옵션을 비활성화 하는 방법은 다음과 같습니다. 관리자 권한으로 로그인 한뒤에 mysql 에서 다음과 같이 입력해서 only_full_group_by 옵션을 꺼주면 됩니다. 참고로 MySQL 뿐만아니라 MariaDB에서도..