MySQL의 집계 함수(Aggregate Function)는 여러 행(row)의 값을 기반으로 단일 결과를 계산하는 함수입니다. 주로 그룹화된 데이터에 대해 요약 정보를 제공하는 데 사용되며, SELECT 구문과 함께 자주 사용됩니다.

예시 테이블

아래 코드를 입력하여 table를 생성해주세요.

CREATE TABLE employees (
    employee_id INT AUTO_INCREMENT PRIMARY KEY,
    employee_name VARCHAR(100) NOT NULL,
    department VARCHAR(100) NOT NULL,
    salary DECIMAL(10, 2) NOT NULL
);

INSERT INTO employees (employee_name, department, salary)
VALUES 
    -- HR 부서
    ('Alice', 'HR', 5000.00),
    ('Bob', 'HR', 6000.00),
    ('Grace', 'HR', 5500.00),
    ('Jack', 'HR', 5800.00),
    ('Karen', 'HR', 6200.00),
    ('Leo', 'HR', 5100.00),

    -- IT 부서
    ('Charlie', 'IT', 7000.00),
    ('David', 'IT', 8000.00),
    ('Hank', 'IT', 7500.00),
    ('Mia', 'IT', 7200.00),
    ('Nina', 'IT', 7600.00),
    ('Oscar', 'IT', 7300.00),
    ('Paul', 'IT', 7900.00),

    -- Finance 부서
    ('Eve', 'Finance', 9000.00),
    ('Frank', 'Finance', 10000.00),
    ('Ivy', 'Finance', 9500.00),
    ('Quinn', 'Finance', 9800.00),
    ('Ray', 'Finance', 9700.00),
    ('Sam', 'Finance', 9200.00),

    -- Marketing 부서
    ('Tom', 'Marketing', 6700.00),
    ('Uma', 'Marketing', 6900.00),
    ('Vera', 'Marketing', 7100.00),
    ('Walt', 'Marketing', 6800.00),
    ('Xena', 'Marketing', 6500.00),
    ('Yara', 'Marketing', 6400.00),
    ('Zane', 'Marketing', 7000.00),

    -- Sales 부서
    ('Adam', 'Sales', 7100.00),
    ('Bella', 'Sales', 7200.00),
    ('Chris', 'Sales', 7300.00),
    ('Diana', 'Sales', 6800.00),
    ('Ethan', 'Sales', 7600.00),
    ('Fiona', 'Sales', 7400.00),
    ('George', 'Sales', 6900.00);

COUNT()

특정 열의 값이 존재하는 행의 개수를 반환합니다.

SELECT COUNT(*) FROM employees;

이 쿼리는 employees 테이블의 전체 행 수를 반환합니다.

COUNT(*)
33

SUM()

숫자 열의 값들의 합계를 계산합니다.

SELECT SUM(salary) FROM employees;

이 쿼리는 employees 테이블에서 모든 직원의 급여 합계를 반환합니다.

SUM(salary)
241000.00

AVG()