MySQL - Aggregate Function 집계함수

김혜령·2024년 2월 23일
0

MySQL

목록 보기
11/14
post-thumbnail

Aggregate Function (집계함수)

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

  • COUNT
    칼럼의 총 갯수를 계산해주는 함수

    select count(column)
    from table_name
    where condition;

  • SUM
    숫자 칼럼의 합계를 계산해주는 함수

    select sum(column)
    from table_name
    where condition;

  • AVG
    숫자 칼럼의 평균을 계산해주는 함수

    select avg(column)
    from table_name
    where condition;

  • MIN
    숫자 칼럼 중 가장 적은 값을 찾아주는 함수

    select min(column)
    from table
    where condition;

  • MAX
    숫자 칼럼 중 가장 큰 값을 찾아주는 함수

    select max(column)
    from table
    where condition;

GROUP BY

그룹화하여 데이터를 조회

select column1, column2, ...
from table_name
where condition
group by column1, column2, ...
order by column1, column2, ...;

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

select police_station
from crime_status
group by police_station
order by police_station
limit 5;

*DISTINCT(중복제거)를 사용하는 경우 - ORDER BY를 사용할 수 없음

#경찰서 종류 검색
select dinstinct police_station from crime_status limit 5;

HAVING

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

select column1, column2, ...
from table_name
where condition
group by column1, column2, ...
having condition #집계함수가 포함된 조건 명시
order by column1, column2, ...

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

select police_station, sum(case_number) 발생건수
from crime_status
where status_type like '발생'
group by police_station
having 발생건수 > 4000;

0개의 댓글