[시나공] SQL 심화 정리 (JOIN / 서브쿼리 / DML / 트리거)

2026. 3. 24. 22:58Certifications/정보처리기사 실기

1️⃣ JOIN

✅ 개념

  • JOIN은 두 개 이상의 테이블을 연결하여 하나의 결과 집합을 생성하는 연산
  • 관계형 데이터베이스에서 테이블 간 관계를 기반으로 데이터를 결합할 때 사용

🎯 포인트

  • JOIN = 테이블 결합
  • 공통 속성을 기준으로 데이터 연결

✅ 종류

구분 설명
INNER JOIN 두 테이블에서 조건이 일치하는 행만 반환
OUTER JOIN 조건이 일치하지 않는 행도 NULL을 포함하여 반환

2️⃣ INNER JOIN

✅ 개념

  • 조인 조건을 만족하는 공통 데이터만 조회
  • 가장 기본적인 JOIN 방식

🔹 예시

SELECT A.컬럼, B.컬럼
FROM 테이블A A
INNER JOIN 테이블B B
ON A.키 = B.키;

✅ INNER JOIN 종류

종류 설명
THETA JOIN 비교 연산자를 사용한 JOIN
EQUI JOIN ' = ' 연산자를 사용한 JOIN
NATURAL JOIN 동일한 이름의 속성을 자동으로 JOIN
NON-EQUI JOIN ' = ' 이외 비교 연산을 사용하는 JOIN

3️⃣ EQUI JOIN (동등 조인)

✅ 개념

  • 두 테이블에서 동일한 값(=)을 가진 속성을 기준으로 연결하는 조인

✅ WHERE 절을 이용한 JOIN

SELECT A.컬럼, B.컬럼
FROM 테이블A A, 테이블B B
WHERE A.키 = B.키;

✅ NATURAL JOIN

  • 두 테이블에서 동일한 이름의 속성을 자동으로 조인
SELECT *
FROM 테이블A
NATURAL JOIN 테이블B;

✅ USING 절 JOIN

  • 동일한 이름의 속성을 지정하여 JOIN 수행
SELECT *
FROM 테이블A
JOIN 테이블B
USING(공통속성);

4️⃣ OUTER JOIN

✅ 개념

  • 두 테이블을 JOIN할 때 조건이 일치하지 않는 행도 NULL을 포함하여 반환하는 JOIN

✅ LEFT OUTER JOIN

  • 왼쪽 테이블 기준
  • 오른쪽 테이블에 매칭되는 값이 없으면 NULL
SELECT *
FROM 테이블A
LEFT OUTER JOIN 테이블B
ON A.키 = B.키;

✅ RIGHT OUTER JOIN

  • 오른쪽 테이블 기준
SELECT *
FROM 테이블A
RIGHT OUTER JOIN 테이블B
ON A.키 = B.키;

✅ FULL OUTER JOIN

  • 양쪽 테이블의 모든 데이터 반환
SELECT *
FROM 테이블A
FULL OUTER JOIN 테이블B
ON A.키 = B.키;

5️⃣ 서브쿼리(Subquery)

✅ 개념

  • SQL 문 내부에 포함된 또 다른 SELECT 문

🎯 포인트

  • 서브쿼리 = SQL 내부 SQL

✅ 특징

  • 괄호 ( ) 로 묶어 사용
  • 단독 실행 불가
  • 메인 쿼리와 함께 실행

✅ 서브쿼리 유형

구분 설명
단일행 서브쿼리 하나의 값 반환
다중행 서브쿼리 여러 행 반환
다중열 서브쿼리 여러 열 반환

✅ 예시

SELECT 이름
FROM 학생
WHERE 학과코드 =
      (SELECT 학과코드
       FROM 학과
       WHERE 학과명 = '컴퓨터');

6️⃣ DML (Data Manipulation Language)

✅ 개념

  • 데이터베이스 데이터를 조작하는 SQL 명령어

🎯 포인트

  • DML = 데이터 조작

✅ 주요 명령어

명령어 설명
SELECT 데이터 조회
INSERT 데이터 삽입
UPDATE 데이터 수정
DELETE 데이터 삭제

✅ INSERT

INSERT INTO 테이블명(컬럼1, 컬럼2)
VALUES(값1, 값2);

✅ UPDATE

UPDATE 테이블명
SET 컬럼 = 값
WHERE 조건;

✅ DELETE

DELETE FROM 테이블명
WHERE 조건;

7️⃣ 트리거 (Trigger)

✅ 개념

  • 데이터베이스에서 특정 이벤트 발생 시 자동으로 실행되는 절차형 SQL

🎯 포인트

  • INSERT / UPDATE / DELETE 발생 시 자동 실행

✅ 특징

  • DB 내부에 저장
  • 이벤트 발생 시 자동 실행
  • 데이터 무결성 유지
  • 자동 작업 수행

✅ 사용 목적

목적 설명
무결성 유지 데이터 변경 감지
자동 처리 이벤트 발생 시 실행
로그 기록 데이터 변경 기록

📊 시험 포인트 정리

🔥 1. JOIN 핵심

  • JOIN = 테이블 결합
  • INNER JOIN → 일치 데이터만
  • OUTER JOIN → NULL 포함

🔥 2. INNER JOIN 세부 유형

  • THETA JOIN → 비교 연산 사용
  • EQUI JOIN → = 사용
  • NATURAL JOIN → 동일 속성 자동 연결

🔥 3. OUTER JOIN

  • LEFT OUTER JOIN → 왼쪽 기준
  • RIGHT OUTER JOIN → 오른쪽 기준

🔥 4. 서브쿼리

  • SQL 내부 SELECT
  • 단일행 / 다중행 구분

🔥 5. DML

  • SELECT / INSERT / UPDATE / DELETE

🔥 6. 트리거

  • 이벤트 발생 시 자동 실행 SQL

📌 암기 핵심 요약

  • JOIN = 테이블 결합 연산
  • INNER JOIN = 조건 일치 데이터만 반환
  • OUTER JOIN = NULL 포함 반환
  • 서브쿼리 = SQL 내부 SELECT
  • DML = 데이터 조작 언어
  • 트리거 = 이벤트 발생 시 자동 실행 SQL





2025 시나공 퀵이지 정보처리기사 실기 단기완성
(저자: 강윤석, 김용갑, 김우경, 김종일 | 출판사: 길벗)

※ 본 글은 위 교재를 참고하여 학습 목적으로 재정리한 내용입니다.