= 여러 컬럼 혹은 테이블 전체 칼럼으로 부터 하나의 결과값을 반환하는 함수
COUNT, SUM, AVG 함수는 데이터의 NULL값이 있으면 그 값은 제외하고 결과 값을 반환한다.
각 집계함수의 예제 실습은 aws rds로 연결하여 crime_status와 police_station 테이블을 활용하면 된다
=그룹화 하여 데이터를 조회
ex) 경찰서 별로 총 발생 범죄 건수를 조회
주의 해야하는 점은 group by 뒤에 나오는 컬럼은 무조건 select 컬럼안에 포함되어야 한다. 즉, "조회하고 싶은 컬럼 ⊃ 그룹화 하고 싶은 컬럼"
group by 하고 나서 만들어진 결과에 필터 적용(그룹핑 후) = HAVING
데이터 원본에 적용되는 필터(그룹핑 전) = where
SQL 쿼리 실행 순서를 보면
FROM > WHERE > GROUP BY> HAVING > SELECT > ORDER BY
WHERE 명령어가 HAVING보다 더 먼저 실행하는 것을 알 수 있다. 즉, 원본 데이터를 WHERE 조건으로 먼저 짤라주고 그 이후에 그 데이터를 가지고 그룹바이 하고 나서 만들어진 결과에 대해 필터를 적용하는 것이 HAVING이다.
EX) 경찰서 이름이 "강"으로 시작하고 범죄 건수가 4000이 넘어가는 경찰서를 경찰서별로 조회하기