
employees 테이블을 만들어 이를 기반으로 예제를 살펴보자! 💨
📌 employees 테이블 생성과 데이터 삽입 쿼리
CREATE TABLE employees (
employee_id INT PRIMARY KEY,
name VARCHAR(50),
department VARCHAR(50),
job_title VARCHAR(50),
location VARCHAR(50),
salary DECIMAL(10, 2)
);
INSERT INTO employees (employee_id, name, department, job_title, location, salary) VALUES
(1, 'Keroro', 'Sales', 'Manager', 'Seoul', 90000),
(2, 'Giroro', 'Sales', 'Salesperson', 'Seoul', 60000),
(3, 'Kururu', 'HR', 'Recruiter', 'Daegu', 55000),
(4, 'Tamama', 'IT', 'Developer', 'Yeongju', 75000),
(5, 'Dororo', 'IT', 'Manager', 'Yeongju', 85000),
(6, 'Shiro', 'HR', 'Manager', 'Seoul', 80000),
(7, 'Maredo', 'Sales', 'Salesperson', 'Yeongju', 65000);
👀 생성한 employees 테이블 확인

GROUP BY 절은 데이터를 그룹화하여 집계 함수를 사용해 각 그룹의 요약 정보를 생성한다.






부서별로 총 급여와 평균 급여를 계산


HAVING 절은 집계 함수의 결과를 기반으로 그룹화된 데이터에 대해 조건을 적용한다.
WHERE 절은 행 수준에서 조건을 적용하지만, HAVING은 집계된 결과(그룹화된 데이터)에서 조건을 적용한다는 점에서 차이가 있다.

WHERE vs HAVINGWHERE
HAVING