SQL 쿼리를 매일 쓰는 개발자가 SQLD 시험에서 탈락하는 일이 생각보다 흔하다. SQLD는 과목별 40점 과락 기준이 있어 총점 60점을 넘어도 한 과목이 기준 미달이면 불합격 처리된다. 실력이 아니라 시험 구조를 몰랐기 때문이다. 이 글은 두 과목의 배점 비율과 자주 나오는 출제 패턴을 분석해, 단기 합격에 필요한 공부 순서를 제시한다.
SQLD 시험 구성과 합격 기준
한국데이터산업진흥원이 주관하는 SQLD(SQL 개발자) 자격시험은 연 4회 실시된다. 시험은 두 과목으로 나뉘며, 배점 비율이 크게 다르다는 점이 핵심이다.
| 과목 | 문항 수 | 배점 | 과락 기준 |
|---|---|---|---|
| 1과목 — 데이터 모델링의 이해 | 10문항 | 20점 | 8점 미만 |
| 2과목 — SQL 기본 및 활용 | 40문항 | 80점 | 32점 미만 |
| 합계 | 50문항 | 100점 | 평균 60점 미만 |
합격하려면 두 조건을 동시에 충족해야 한다. 과목별 40% 이상 득점(1과목 8점 이상, 2과목 32점 이상)과 전체 평균 60점 이상이다. 1과목에서 10문항 중 3개를 틀리면 바로 과락이다. 문항 수가 적은 만큼 한 문제의 무게가 그만큼 무겁다.
1과목: 10문항이지만 방심하면 과락
데이터 모델링의 이해는 문항 수가 적어 수험생이 공부량을 줄이는 경향이 있다. 그런데 과락선이 단 8점이다. 3개만 틀려도 탈락이다.
자주 나오는 1과목 주제
- 엔티티·속성·관계 개념 — 정의 암기보다 서로 헷갈리는 경계를 짚는 문제가 반복 출제된다.
- 정규화(1NF·2NF·3NF·BCNF) — 어떤 이상(anomaly)이 발생하는지, 어느 단계까지 분해해야 하는지를 묻는다.
- 반정규화 — 언제 적용하는지, 어떤 방식(컬럼 추가·테이블 분리)인지 사례형으로 출제된다.
- 식별자 구분 — 주식별자·보조식별자·외부식별자의 차이, 식별 관계와 비식별 관계 구별.
- ERD 읽기 — 카디널리티(1:1, 1:N, M:N) 표기법과 선택적·필수 참여 구분.
1과목은 2~3일 집중 정리로 충분히 커버된다. 단, 정규화를 이해 없이 외우면 응용 문제에서 틀린다. 삽입·삭제·갱신 이상(anomaly)을 먼저 이해하고, 각 정규형이 어떤 이상을 제거하는지 연결해서 기억하는 것이 빠르다.
2과목: 합격을 실질적으로 결정하는 40문항
전체 점수의 80%가 2과목에서 나온다. 2과목에서 40점(50%)을 확보하면 1과목을 만점 받지 않아도 전체 60점선이 넘는다. 반대로 2과목이 흔들리면 1과목을 완벽히 맞아도 만회가 안 된다.
출제 비중이 높은 주제
- DML(SELECT·INSERT·UPDATE·DELETE) — 가장 많이 나온다. WHERE 조건, 서브쿼리, 집합 연산자(UNION·INTERSECT·MINUS) 조합 문제.
- JOIN 유형 — INNER JOIN 기본 외에 LEFT·RIGHT·FULL OUTER JOIN의 결과 행 수를 예측하는 문제가 매회 등장한다.
- 윈도우 함수 — RANK·DENSE_RANK·ROW_NUMBER의 차이, PARTITION BY·ORDER BY 절 위치에 따른 결과 변화. 수험생 오답률이 가장 높은 주제 중 하나다.
- NULL 처리 함수 — NVL·NVL2·COALESCE·NULLIF의 인수 순서와 반환 값 차이.
- 그룹 함수 — ROLLUP·CUBE·GROUPING SETS의 소계 생성 방식. 결과 표를 보고 어떤 함수를 썼는지 역추론하는 유형.
- 계층형 쿼리 — START WITH, CONNECT BY PRIOR, LEVEL 사용법. 오라클 문법이 사실상 기준이다.
- DDL·DCL·TCL — COMMIT/ROLLBACK 타이밍, TRUNCATE vs DELETE(DDL vs DML 차이), CASCADE 옵션.
실무 경험자가 빠지는 두 가지 함정
첫째, SQLD가 특정 DBMS 문법을 요구하지 않는다고 알려져 있지만 계층형 쿼리와 일부 함수는 오라클 문법이 기준이다. PostgreSQL이나 MySQL만 써온 수험생은 오라클 방식의 외부 조인 표기(+)와 NULL 처리 함수를 별도로 확인해야 한다.
둘째, “SQL을 쓸 줄 알면 쉽게 합격한다”는 말은 반은 맞고 반은 틀리다. 실무에서는 결과만 맞으면 되지만, 시험은 쿼리 실행 결과를 코드만 보고 머릿속으로 추적해야 한다. 특히 윈도우 함수와 OUTER JOIN이 결합된 문제에서 실무 직관이 오히려 방해가 된다. 기출 문제를 손으로 직접 풀어보는 과정이 필수인 이유다.
단계별 공부 순서와 기간
배경 지식에 따라 차이는 있지만, 비전공자 기준 4~6주, SQL 실무 경험자는 2~3주면 합격권에 진입한다. 아래 순서가 효율적이다.
- 1단계(3~5일) — 1과목 이론 정리. 정규화 흐름과 ERD 표기법 집중. 과락선이 낮으므로 핵심 개념 위주로 빠르게 정리한다.
- 2단계(1~2주) — 2과목 이론. DDL·DML·TCL → JOIN → 서브쿼리 순서로 레이어를 쌓는다.
- 3단계(1주) — 윈도우 함수·그룹 함수·계층형 쿼리. 개념 이해 후 바로 기출 문제에 적용한다.
- 4단계(1주 이상) — 기출 문제 반복 풀이. 틀린 문제는 반드시 SQL을 직접 실행해 결과를 눈으로 확인한다.
기출은 최소 3회분, 가능하면 5회분 이상을 반복하는 것이 정석이다. 출제 패턴이 비교적 일정하게 유지되므로 기출 범위를 크게 벗어나는 문제가 드물다. 새 교재보다 기출 풀이에 시간을 더 쓰는 것이 합격률을 높이는 실질적인 방법이다.
시험 접수 방법과 일정
SQLD 시험은 연 4회(3월·6월·9월·12월 전후) 실시된다. 접수는 한국데이터산업진흥원 데이터자격검정 사이트에서 진행되며, 응시료는 5만 원 내외다. 원서 접수 기간이 짧고 인기 회차는 조기 마감되는 경우가 있으므로, 목표 회차의 접수 일정을 미리 캘린더에 등록해두는 것이 좋다.
시험 형태는 전 문항 객관식(4지선다)이다. 별도 실기 없이 필기 한 번으로 합격 여부가 결정된다. 자격 취득 후 유효기간이 없어 갱신 절차도 없다는 점도 장점이다.
정리
SQLD 합격의 관건은 두 가지다. 과목별 과락 기준을 인지하고 1과목을 방치하지 않는 것, 그리고 2과목 윈도우 함수·그룹 함수를 기출로 충분히 연습하는 것. SQL을 실무에서 쓰더라도 시험 특유의 추론 방식에 적응하는 연습 없이는 합격이 보장되지 않는다. 구조를 알고 순서대로 공부하면 단기 합격은 충분히 현실적인 목표다.
자주 묻는 질문
SQLD 시험 합격률은 어느 정도인가요?
회차에 따라 다르지만 30~50% 수준이 일반적으로 보고된다. 총점 기준만 보면 어렵지 않아 보이지만, 과목별 40점 과락 기준과 출제 패턴을 모르고 응시하면 예상보다 통과율이 낮다.
SQLD 공부는 얼마나 해야 하나요?
SQL 실무 경험자는 2~3주, 비전공자는 4~6주가 일반적이다. 1과목 이론(3~5일) → 2과목 이론(1~2주) → 기출 반복 풀이(1주 이상) 순서로 공부하면 효율적이다.
SQLD와 SQLP의 차이는 무엇인가요?
SQLD(SQL 개발자)는 SQL 활용 능력을 검증하는 기본 수준 자격증으로 전 문항 객관식이다. SQLP(SQL 전문가)는 SQLD보다 난이도가 높으며 서술형·실기가 포함되고, SQLD 취득 후 응시 자격이 주어진다.
SQLD 자격증에 유효기간이 있나요?
SQLD는 별도 유효기간이 없는 영구 자격이다. 취득 후 갱신 절차나 보수 교육 없이 계속 유효하다.
SQLD 시험은 어떻게 접수하나요?
한국데이터산업진흥원 데이터자격검정 사이트에서 접수한다. 연 4회 실시되며 원서 접수 기간이 짧아 목표 회차 일정을 미리 확인해야 한다. 응시료는 5만 원 내외다.