Ch.9 데이터베이스 (필기 3과목)

SQL 기본 — SELECT·INSERT·UPDATE·DELETE

DDL·DML·DCL의 구분과 대표 명령어를 열거할 수 있다SELECT문의 기본 구조와 WHERE 조건절을 작성할 수 있다INSERT·UPDATE·DELETE의 구문을 정확히 구분할 수 있다

엑셀 필터 대신 한 줄 명령으로 원하는 데이터를 꺼내는 언어

1만 건 학생 데이터에서 '학과=컴공 AND 학년=3'인 학생만 추출하는 상황

데이터가 커질수록 수작업 필터는 한계, 정확한 SQL 문법이 필수입니다

SQL(Structured Query Language)은 필기 3과목에서 매회 5~7문제가 출제되는 최대 비중 영역입니다


article

핵심 내용

시험 빈출: "SELECT는 어떤 언어에 속하는가?" → DML. "CREATE TABLE은?" → DDL. "GRANT는?" → DCL.

-- SELECT 기본 구조 (실행 순서 아님, 작성 순서)
SELECT  열이름1, 열이름2     -- 조회할 열
FROM    테이블명              -- 대상 테이블
WHERE   조건                  -- 행 필터
GROUP BY 그룹 기준 열          -- 그룹화
HAVING  그룹 조건             -- 그룹 필터
ORDER BY 열이름 [ASC|DESC]    -- 정렬

-- 예: 컴공과 3학년 학생을 이름순 조회
SELECT  학번, 이름, 학년
FROM    학생
WHERE   학과 = '컴퓨터공학' AND 학년 = 3
ORDER BY 이름 ASC;

LIKE 와일드카드: % = 0개 이상 문자, _ = 정확히 1문자. '김__' = 김 뒤 2글자. 시험 필수!

-- INSERT: 데이터 삽입
INSERT INTO 학생(학번, 이름, 학과)
VALUES ('2024001', '홍길동', '컴퓨터공학');

-- UPDATE: 데이터 수정
UPDATE 학생
SET 학과 = '전자공학'
WHERE 학번 = '2024001';

-- DELETE: 데이터 삭제
DELETE FROM 학생
WHERE 학번 = '2024001';

DROP vs DELETE vs TRUNCATE: DROP = 테이블 자체 삭제(DDL), DELETE = 행 삭제(DML), TRUNCATE = 모든 행 삭제+구조 유지(DDL). 시험 단골!

SELECT문에서 조건을 지정하는 절은?

다음 중 DML(데이터 조작어)에 해당하지 않는 것은?

LIKE '김_'으로 검색되는 이름은? (_ = 정확히 1문자)

key

핵심 용어

DISTINCT

중복 제거: SELECT DISTINCT 학과 FROM 학생

BETWEEN

범위: WHERE 성적 BETWEEN 80 AND 100

IN

목록: WHERE 학과 IN ('컴공', '전자')

LIKE

패턴: WHERE 이름 LIKE '김%' (김으로 시작)

IS NULL

NULL 확인: WHERE 전화번호 IS NULL

compare_arrows

비교 정리

항목분류풀네임명령어역할
DDLData Definition LanguageCREATE, ALTER, DROP테이블 구조 정의
DMLData Manipulation LanguageSELECT, INSERT, UPDATE, DELETE데이터 조작
DCLData Control LanguageGRANT, REVOKE권한 제어
image

시각 자료

다이어그램: cc-mg012
check_circle

핵심 정리

  • 1SQL 분류: DDL(CREATE/ALTER/DROP), DML(SELECT/INSERT/UPDATE/DELETE), DCL(GRANT/REVOKE)
  • 2SELECT 구조: SELECT → FROM → WHERE → GROUP BY → HAVING → ORDER BY
  • 3LIKE 와일드카드: % = 0개 이상, _ = 정확히 1문자
  • 4UPDATE/DELETE에 WHERE 없으면 전체 행 대상 — 매우 위험!
  • 5DROP(테이블 삭제) vs DELETE(행 삭제) vs TRUNCATE(전체 행 삭제, 구조 유지)

퀴즈와 인터랙션으로 더 깊이 학습하세요

play_circle인터랙티브 레슨 시작