
이번 글에서는 지금까지 배운 SQL 기본 문법부터 함수, 집계, CTE까지 실무 관점에서 활용하는 방법을 정리하고, 개강 이후부터 학기 중에는 실전 문제 풀이와 오답노트 정리를 통해 SQL 실력을 단단히 다질 계획까지 공유합니다.
SQL에서 가장 많이 쓰이는 JOIN!
-- 직원과 부서 테이블 LEFT JOIN 예제
SELECT e.name, d.department_name
FROM employees e
LEFT JOIN departments d
ON e.department_id = d.id;
SELECT sub.department_id, AVG(sub.salary)
FROM (SELECT * FROM employees WHERE salary > 3000) sub
GROUP BY sub.department_id;
SELECT name
FROM employees e
WHERE EXISTS (
SELECT 1 FROM projects p WHERE p.manager_id = e.id
);
조건에 따라 값을 변환할 때 사용
SELECT name,
CASE
WHEN salary >= 5000 THEN 'High'
WHEN salary >= 3000 THEN 'Medium'
ELSE 'Low'
END AS salary_grade
FROM employees;
COALESCE 활용 가능SELECT name, salary,
SUM(salary) OVER (PARTITION BY department_id ORDER BY salary) AS cumulative_salary
FROM employees;
WITH RECURSIVE subordinates AS (
SELECT id, manager_id, name
FROM employees
WHERE id = 1
UNION ALL
SELECT e.id, e.manager_id, e.name
FROM employees e
INNER JOIN subordinates s ON e.manager_id = s.id
)
SELECT * FROM subordinates;
COUNT, DISTINCT로 이상치 확인EXPLAIN으로 실행 계획 확인이번 글을 마지막으로 SQL 시리즈를 정리했습니다.
학기 중에는 실전 문제와 오답노트를 통해 SQL 실력을 체계적으로 다지는 단계로 넘어가려고 합니다.