[제로베이스][SQL] 집계함수

한결·2024년 1월 30일
post-thumbnail

집계함수

여러 칼럼 혹은 테이블 전체 칼럼으로부터 하나의 결과값을 반환하는 함수

COUNT : 총 갯수를 계산해주는 함수
SUM : 합계를 계산해주는 함수
AVG : 평균을 계산해주는 함수
MIN : 가장 작은 값을 찾아주는 함수
MAX : 가장 큰 값을 찾아주는 함수
FIRST : 첫번째 결과값을 리턴하는 함수
LAST : 마지막 결과값을 리턴하는 함수


COUNT

SELECT COUNT(column)
FROM tablename
WHERE condition;


예시


중복을 빼고 세고 싶을 때


SUM

범죄 총 발생건수는?


중부에서 발생한 검거된 건수는?


AVG

SELECT AVG(column)
FROM tablename
WHERE condition;


평균 폭력 검거 건수는?

select avg(case_number)
from crime_status
where crime_stype='폭력' and status_type = '검거';


MIN

SELECT MIN(column)
FROM tablename
WHERE condition;


MAX

SELECT MAX(column)
FROM tablename
WHERE condition;


GROUP BY

SELECT column2, column2, ...
FROM table
WHERE condition
GROUP BY column1, column2, ...
ORDER BY column1, column2, ...;


  1. crime_status에서 경찰서별로 그룹화 하여 경찰서 이름을 조회

  1. 경찰서 별로 총 발생 범죄 건수를 검색

  2. 경찰서 별 평균 범죄 발생건수와 평균 범죄 검거 건수를 검색


HAVING

조건에 집계함수가 포함되는 경우 WHERE 대신 HAVING 사용

SELECT column1, column2, ...
FROM table
WHERE condition
GROUP BY column1, column2, ...
HAVING condition (Aggregate Functions)
ORDER BY column1, column2, ...


  1. 경찰서 별로 발생한 범죄 건수의 합이 4000 건보다 큰 경우를 검색

  1. 경찰서 별로 발생한 폭력과 절도의 범죄 건수 평균이 2000 이상인 경우를 검색
profile
낭만젊음사랑

0개의 댓글