본문으로 바로 가기

SQL 개발자 (SQLD) 기출 유형 문제 풀이와 해설

이 자격증에는 아직 시행기관이 공개한 기출문제가 없습니다. 대신 SQL 개발자 (SQLD)의 출제 유형과 난도를 참고해 직접 만든 AI 예상문제 149개 가운데, 시험에 자주 나오는 유형 10개를 정답·해설과 함께 정리했습니다.

SQL 개발자 시험은 데이터 모델링의 이해 10문항, SQL 기본 및 활용 40문항으로 총 50문항입니다. 'SQLD' 공부를 막 시작했다면 아래 문제로 어떤 유형이 나오는지 먼저 확인해 보세요.

'검수 완료'는 정답을 가린 별도 AI가 문제를 다시 풀어 정답이 일치하는지 확인했다는 뜻이고, '검수 전'은 아직 그 확인을 거치지 않았다는 뜻입니다. 사람 전문가가 검수한 것은 아니므로, 이상한 점은 풀이 화면의 '문제 오류 신고'로 알려 주세요.

SQL 개발자 (SQLD) 기출 유형 대표 문제 10선

예상문제검수 완료데이터 모델링의 이해 › 데이터 모델과 SQL★★★★☆

문제 1. 테이블의 모든 속성이 더 이상 나눌 수 없는 하나의 값(원자값)만 가지도록 만드는 정규화 단계는?

  1. ① 제2정규형
  2. ② 제3정규형
  3. ③ BCNF
  4. ④ 제1정규형
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ④ 제1정규형

핵심: 1정규형=원자값, 2정규형=부분 종속 제거, 3정규형=이행 종속 제거

정규화 단계는 순서대로 외우면 쉽습니다.

  • 제1정규형: 한 칸에 값이 하나(원자값). 반복되는 값을 없앤다
  • 제2정규형: 주식별자의 일부에만 종속된 속성(부분 함수 종속)을 없앤다
  • 제3정규형: 주식별자가 아닌 속성끼리의 종속(이행 함수 종속)을 없앤다
  • BCNF: 모든 결정자가 후보키가 되게 한다

틀린 선지

  • 제2정규형: 부분 함수 종속을 없애는 단계로, 원자값은 그 전에 이미 만족해야 합니다.
  • 제3정규형: 이행 함수 종속을 없애는 단계입니다.
  • BCNF: 결정자가 모두 후보키가 되도록 하는 단계입니다.
예상문제검수 완료SQL 기본 및 활용 › SQL 활용★★★★★

문제 2. WHERE DEPTNO ___ (SELECT DEPTNO FROM DEPT WHERE LOC = '서울') 에서 서브쿼리 결과가 여러 행일 수 있을 때 빈칸에 쓸 연산자로 알맞은 것은?

  1. ① >
  2. ② <>
  3. ③ IN
  4. ④ =
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ③ IN

핵심: 서브쿼리 결과가 여러 행 → IN·ANY·ALL·EXISTS

서브쿼리가 여러 행을 돌려줄 수 있으면 =, >, <> 같은 단일행 비교 연산자를 쓰면 오류가 납니다. 이때는 IN(목록 중 하나와 같음), ANY, ALL, EXISTS 같은 다중행 연산자를 씁니다.

틀린 선지

  • >: 단일행 연산자라 여러 행과 바로 비교할 수 없습니다.
  • <>: 단일행 연산자입니다.
  • =: 서브쿼리가 한 행만 돌려줄 때 쓰는 단일행 연산자입니다. 여러 행이면 오류가 납니다.
예상문제검수 완료데이터 모델링의 이해 › 데이터 모델과 SQL★★★★☆

문제 3. 복합 주식별자를 가진 테이블에서, 주식별자의 일부에만 종속된 속성(부분 함수 종속)을 분리하는 정규화 단계는?

  1. ① 제1정규형
  2. ② 제3정규형
  3. ③ 제2정규형
  4. ④ 제4정규형
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ③ 제2정규형

핵심: 부분 함수 종속 제거 = 제2정규형

제2정규형은 주식별자 전체가 아니라 일부에만 종속된 속성을 다른 테이블로 떼어 내는 단계입니다. 예를 들어 주식별자가 (학번, 과목코드)인데 과목명이 과목코드만으로 정해지면, 과목명을 과목 테이블로 분리합니다.

틀린 선지

  • 제1정규형: 원자값(한 칸에 값 하나)을 만드는 단계입니다.
  • 제3정규형: 일반 속성끼리의 종속(이행 함수 종속)을 없애는 단계입니다.
  • 제4정규형: 다치 종속을 없애는 단계로, 부분 함수 종속과는 다릅니다.
예상문제검수 완료SQL 기본 및 활용 › SQL 활용★★★★★

문제 4. 두 SELECT 결과를 합치면서 중복된 행을 하나만 남기는 집합 연산자는?

  1. ① UNION ALL
  2. ② INTERSECT
  3. ③ UNION
  4. ④ MINUS
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ③ UNION

핵심: UNION=합집합(중복 제거), UNION ALL=중복 그대로

  • UNION: 합집합, 중복 행은 하나만 남김
  • UNION ALL: 합집합, 중복도 그대로 모두
  • INTERSECT: 교집합(양쪽에 다 있는 것)
  • MINUS(Oracle) / EXCEPT: 차집합(앞에만 있는 것)

틀린 선지

  • UNION ALL: 중복을 없애지 않고 모두 보여 줍니다.
  • INTERSECT: 양쪽에 모두 있는 행만 남기는 교집합입니다.
  • MINUS: 앞의 결과에서 뒤의 결과를 뺀 차집합입니다.
예상문제검수 완료데이터 모델링의 이해 › 데이터 모델링의 이해★★★★☆

문제 5. 다음은 IE(까마귀발) 표기법으로 그린 부서와 사원의 관계이다. 그림을 바르게 해석한 것은?

부서 엔터티(부서번호, 부서명)와 사원 엔터티(사원번호, 사원명, 부서번호 FK)가 '소속'이라는 점선으로 연결되어 있다. 부서 쪽 선 끝에는 세로선 두 개가 있고, 사원 쪽 선 끝에는 동그라미 하나와 까마귀발(세 갈래 선)이 있다.
  1. ① 한 사원은 여러 부서에 동시에 소속될 수 있다.
  2. ② 한 부서에는 사원이 한 명도 없을 수 있고, 여러 명 있을 수도 있다.
  3. ③ 한 부서에는 사원이 반드시 한 명 이상 있어야 한다.
  4. ④ 한 사원은 부서에 소속되지 않아도 된다.
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ② 한 부서에는 사원이 한 명도 없을 수 있고, 여러 명 있을 수도 있다.

핵심: IE 표기: ○=0(선택), |=1, 까마귀발=여럿. 선 끝 모양은 그쪽 엔터티 개수

IE 표기법에서는 엔터티 쪽 선 끝 모양이 '상대 인스턴스 하나에 이 엔터티가 몇 개 연결되는지'를 나타냅니다.

  1. 사원 쪽 끝: 동그라미(0) + 까마귀발(여럿) → 한 부서에 사원이 0명 이상(없을 수도, 여러 명일 수도) 있습니다.
  2. 부서 쪽 끝: 세로선 두 개(꼭 1) → 한 사원은 반드시 한 부서에 소속됩니다.

틀린 선지

  • 한 사원은 여러 부서에 동시에 소속될 수 있다: 부서 쪽 끝에 까마귀발이 없으므로 한 사원은 부서 하나에만 소속됩니다.
  • 한 부서에는 사원이 반드시 한 명 이상 있어야 한다: 사원 쪽 끝에 동그라미가 있으므로 사원이 없어도 되는 '선택' 관계입니다. 반드시 있으려면 동그라미 대신 세로선이 있어야 합니다.
  • 한 사원은 부서에 소속되지 않아도 된다: 부서 쪽 끝은 세로선 두 개(꼭 1개)라서 모든 사원은 반드시 한 부서에 소속됩니다.
예상문제검수 완료SQL 기본 및 활용 › SQL 기본★★★★★

문제 6. SELECT 문을 실행할 때 가장 먼저 처리되는 절은?

  1. ① ORDER BY
  2. ② FROM
  3. ③ SELECT
  4. ④ WHERE
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ② FROM

핵심: 실행 순서: FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY

SELECT 문은 적힌 순서와 실행 순서가 다릅니다.

  1. FROM: 어느 테이블에서 가져올지
  2. WHERE: 행 걸러 내기
  3. GROUP BY: 묶기
  4. HAVING: 묶은 결과 걸러 내기
  5. SELECT: 보여 줄 컬럼 고르기
  6. ORDER BY: 정렬

가장 먼저 처리되는 것은 FROM 입니다.

틀린 선지

  • ORDER BY: 가장 마지막에 처리됩니다.
  • SELECT: 맨 앞에 적지만 실행은 다섯 번째입니다.
  • WHERE: FROM 으로 테이블을 정한 다음에 처리됩니다.
예상문제검수 완료데이터 모델링의 이해 › 데이터 모델링의 이해★★★★☆

문제 7. 데이터 모델링 단계 가운데 추상화 수준이 가장 높고, 업무의 핵심 엔터티와 그 관계를 큰 그림으로 그리는 단계는?

  1. ① 프로세스 모델링
  2. ② 논리적 데이터 모델링
  3. ③ 물리적 데이터 모델링
  4. ④ 개념적 데이터 모델링
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ④ 개념적 데이터 모델링

핵심: 개념적(가장 추상적) → 논리적 → 물리적(가장 구체적)

데이터 모델링은 개념적 → 논리적 → 물리적 순서로 진행합니다. 처음 단계인 개념적 데이터 모델링은 세부 속성보다 업무의 핵심 엔터티와 관계를 크게 그리는 단계라서 추상화 수준이 가장 높습니다. 뒤로 갈수록 점점 구체적이 됩니다.

틀린 선지

  • 프로세스 모델링: 데이터가 아니라 업무 처리 흐름을 그리는 작업으로, 데이터 모델링 단계가 아닙니다.
  • 논리적 데이터 모델링: 키·속성·관계를 자세히 정하고 정규화를 하는 단계로, 개념적 모델링보다 구체적입니다.
  • 물리적 데이터 모델링: 테이블·인덱스·저장 공간까지 정하는 가장 구체적인 단계입니다.
예상문제검수 완료SQL 기본 및 활용 › SQL 기본★★★★★

문제 8. GROUP BY 로 묶은 결과에 'SUM(SAL) > 1000' 처럼 집계 함수를 이용한 조건을 걸 때 쓰는 절은?

  1. ① ORDER BY
  2. ② WHERE
  3. ③ HAVING
  4. ④ GROUP BY
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ③ HAVING

핵심: WHERE = 행 조건(집계 함수 불가), HAVING = 그룹 조건

WHERE 는 묶기 전에 행 하나하나를 걸러 내므로 집계 함수를 쓸 수 없습니다. 묶은 다음 그룹 단위로 조건을 거는 절이 HAVING 입니다.

예: `SELECT DEPTNO, SUM(SAL) FROM EMP GROUP BY DEPTNO HAVING SUM(SAL) > 1000;`

틀린 선지

  • ORDER BY: 정렬하는 절입니다.
  • WHERE: GROUP BY 보다 먼저 처리되어 집계 함수 조건을 쓸 수 없습니다.
  • GROUP BY: 묶을 기준 컬럼을 정하는 절이지, 조건을 거는 절이 아닙니다.
예상문제검수 완료SQL 기본 및 활용 › 관리 구문★★★★☆

문제 9. 사용자에게 테이블 조회 권한을 주는 GRANT 문은 SQL 의 어느 종류에 속하는가?

  1. ① DCL
  2. ② DML
  3. ③ DDL
  4. ④ TCL
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ① DCL

핵심: DML=데이터, DDL=구조, DCL=권한, TCL=트랜잭션

SQL 문장은 하는 일에 따라 네 가지로 나뉩니다.

  • DML(데이터 조작어): SELECT, INSERT, UPDATE, DELETE, MERGE
  • DDL(데이터 정의어): CREATE, ALTER, DROP, RENAME, TRUNCATE
  • DCL(데이터 제어어): GRANT, REVOKE — 권한
  • TCL(트랜잭션 제어어): COMMIT, ROLLBACK, SAVEPOINT

틀린 선지

  • DML: 데이터를 조회·입력·수정·삭제하는 명령입니다.
  • DDL: 테이블 같은 객체의 구조를 만들고 바꾸는 명령입니다.
  • TCL: COMMIT·ROLLBACK 처럼 트랜잭션을 다루는 명령입니다.
예상문제검수 완료SQL 기본 및 활용 › 관리 구문★★★★☆

문제 10. 트랜잭션의 성질 가운데 '트랜잭션 안의 작업은 모두 성공하거나 모두 취소되어야 하며, 일부만 반영되어서는 안 된다'는 것은?

  1. ① 지속성(Durability)
  2. ② 일관성(Consistency)
  3. ③ 고립성(Isolation)
  4. ④ 원자성(Atomicity)
▼ 정답과 해설 보기▲ 정답과 해설 접기

정답: ④ 원자성(Atomicity)

핵심: ACID: 원자성(전부 아니면 전무)·일관성·고립성·지속성

트랜잭션의 네 가지 성질(ACID)입니다.

  • 원자성: 전부 실행되거나 전부 취소됨 (All or Nothing)
  • 일관성: 실행 전후에 데이터베이스가 규칙에 맞는 상태를 유지
  • 고립성: 실행 중인 트랜잭션이 다른 트랜잭션의 영향을 받지 않음
  • 지속성: COMMIT 한 결과는 장애가 나도 영구히 남음

틀린 선지

  • 지속성(Durability): 확정된 결과가 영구히 남아야 한다는 뜻입니다.
  • 일관성(Consistency): 트랜잭션 전후에 데이터가 규칙(제약조건 등)에 맞아야 한다는 뜻입니다.
  • 고립성(Isolation): 동시에 실행되는 트랜잭션끼리 서로 끼어들지 않아야 한다는 뜻입니다.

나머지 139문제는 직접 풀어 보세요

풀면 바로 채점·해설. 로그인 없이 무료.

단원별 핵심정리