Cardemy Card emy ← 탐색으로 돌아가기
[

[SQLD합격] SQLD 기출 유형 집중 훈련

이 단계에서는 SQLD 시험 스타일 자체에 적응한다. 자주 나오는 함정 보기, 헷갈리는 개념 비교, 실행 결과 추론 문제를 반복적으로 훈련한다. 문제를 읽자마자 핵심 포인트를 찾는 연습과 오답 제거 능력을 함께 만든다. 실제 시험에서 시간 부족이 자주 발생하기 때문에 빠르게 해석하는 훈련도 포함된다.

74 문항 0 복사 카데미 2026.05.15

수록 문항

총 74개

아래 문항들은 이 학습지에 수록된 카드입니다. 각 카드는 문제(Q)와 답(A)으로 구성되어 있으며, 일부 카드에는 추가 해설이 포함되어 있습니다. 로그인하면 이 학습지를 내 계정으로 복사해 카드를 한 장씩 넘기며 반복 학습할 수 있고, 숙달한 카드는 완료 표시하여 다음 세션에서 제외할 수 있습니다.

  1. #1
    Q.

    제2정규형

    A.

    부분 함수 종속을 제거한 정규형이다

    복합키 일부에만 종속된 컬럼을 분리해야 한다.
  2. #2
    Q.

    SELECT * FROM employees WHERE salary > (SELECT AVG(salary) FROM employees)

    A.

    전체 평균 급여보다 높은 직원만 조회한다

    집계 함수 결과를 서브쿼리로 비교하는 SQLD 대표 패턴이다.
  3. #3
    Q.

    SELECT department_id, COUNT(*) FROM employees GROUP BY department_id HAVING COUNT(*) > 5

    A.

    직원 수가 5명을 초과하는 부서만 조회한다

    HAVING은 GROUP BY 이후 집계 결과 조건에 사용한다.
  4. #4
    Q.

    SELECT * FROM employees WHERE commission_pct IS NULL

    A.

    commission_pct 값이 없는 직원만 조회한다

    NULL 비교는 =이 아니라 IS NULL을 사용해야 한다.
  5. #5
    Q.

    SELECT * FROM employees WHERE commission_pct = NULL

    A.

    올바르지 않은 NULL 비교 방식이다

    NULL은 = 연산자로 비교할 수 없다는 함정 문제다.
  6. #6
    Q.

    SELECT * FROM employees WHERE department_id IN (10,20,30)

    답은 로그인 후 확인
  7. #7
    Q.

    SELECT * FROM employees WHERE department_id NOT IN (10,20,NULL)

    답은 로그인 후 확인
  8. #8
    Q.

    SELECT * FROM employees WHERE EXISTS (SELECT 1 FROM departments d WHERE employees.department_id = d.department_id)

    답은 로그인 후 확인
  9. #9
    Q.

    SELECT * FROM employees WHERE salary > ALL (SELECT salary FROM employees WHERE department_id = 10)

    답은 로그인 후 확인
  10. #10
    Q.

    SELECT * FROM employees WHERE salary > ANY (SELECT salary FROM employees WHERE department_id = 10)

    답은 로그인 후 확인
  11. #11
    Q.

    SELECT employee_id, RANK() OVER(ORDER BY salary DESC) FROM employees

    답은 로그인 후 확인
  12. #12
    Q.

    SELECT employee_id, DENSE_RANK() OVER(ORDER BY salary DESC) FROM employees

    답은 로그인 후 확인
  13. #13
    Q.

    SELECT employee_id, ROW_NUMBER() OVER(ORDER BY salary DESC) FROM employees

    답은 로그인 후 확인
  14. #14
    Q.

    SELECT department_id, SUM(salary) FROM employees GROUP BY ROLLUP(department_id)

    답은 로그인 후 확인
  15. #15
    Q.

    SELECT department_id, SUM(salary) FROM employees GROUP BY CUBE(department_id)

    답은 로그인 후 확인
  16. #16
    Q.

    SELECT department_id, SUM(salary) FROM employees GROUP BY GROUPING SETS(department_id,())

    답은 로그인 후 확인
  17. #17
    Q.

    SELECT employee_id, NVL(commission_pct,0) FROM employees

    답은 로그인 후 확인
  18. #18
    Q.

    SELECT employee_id, COALESCE(commission_pct,bonus_pct,0) FROM employees

    답은 로그인 후 확인
  19. #19
    Q.

    SELECT employee_id, NULLIF(salary,0) FROM employees

    답은 로그인 후 확인
  20. #20
    Q.

    SELECT employee_id, CASE WHEN salary >= 5000 THEN 'HIGH' ELSE 'LOW' END FROM employees

    답은 로그인 후 확인
  21. #21
    Q.

    SELECT employee_id, DECODE(department_id,10,'SALES',20,'HR','ETC') FROM employees

    답은 로그인 후 확인
  22. #22
    Q.

    SELECT * FROM employees WHERE first_name LIKE 'K%'

    답은 로그인 후 확인
  23. #23
    Q.

    SELECT * FROM employees WHERE first_name LIKE '%K'

    답은 로그인 후 확인
  24. #24
    Q.

    SELECT * FROM employees WHERE UPPER(first_name) = 'KIM'

    답은 로그인 후 확인
  25. #25
    Q.

    SELECT * FROM employees WHERE hiredate >= TO_DATE('20250101','YYYYMMDD') AND hiredate < TO_DATE('20260101','YYYYMMDD')

    답은 로그인 후 확인
  26. #26
    Q.

    SELECT * FROM employees e JOIN departments d ON e.department_id = d.department_id

    답은 로그인 후 확인
  27. #27
    Q.

    SELECT * FROM employees e LEFT JOIN departments d ON e.department_id = d.department_id

    답은 로그인 후 확인
  28. #28
    Q.

    SELECT * FROM employees e RIGHT JOIN departments d ON e.department_id = d.department_id

    답은 로그인 후 확인
  29. #29
    Q.

    SELECT * FROM employees e FULL OUTER JOIN departments d ON e.department_id = d.department_id

    답은 로그인 후 확인
  30. #30
    Q.

    SELECT * FROM employees e, departments d WHERE e.department_id = d.department_id

    답은 로그인 후 확인
  31. #31
    Q.

    SELECT * FROM employees e CROSS JOIN departments d

    답은 로그인 후 확인
  32. #32
    Q.

    SELECT * FROM employees e WHERE EXISTS (SELECT 1 FROM employees m WHERE e.manager_id = m.employee_id)

    답은 로그인 후 확인
  33. #33
    Q.

    SELECT * FROM employees e WHERE salary = (SELECT MAX(salary) FROM employees WHERE department_id = e.department_id)

    답은 로그인 후 확인
  34. #34
    Q.

    SELECT * FROM users u LEFT JOIN orders o ON u.user_id = o.user_id WHERE o.order_id IS NULL

    답은 로그인 후 확인
  35. #35
    Q.

    SELECT COUNT(*) FROM employees

    답은 로그인 후 확인
  36. #36
    Q.

    SELECT COUNT(commission_pct) FROM employees

    답은 로그인 후 확인
  37. #37
    Q.

    SELECT DISTINCT department_id FROM employees

    답은 로그인 후 확인
  38. #38
    Q.

    SELECT department_id, AVG(salary) FROM employees GROUP BY department_id

    답은 로그인 후 확인
  39. #39
    Q.

    SELECT department_id, AVG(salary) FROM employees GROUP BY department_id HAVING AVG(salary) > 5000

    답은 로그인 후 확인
  40. #40
    Q.

    SELECT * FROM employees ORDER BY salary DESC

    답은 로그인 후 확인
  41. #41
    Q.

    SELECT * FROM employees ORDER BY salary ASC

    답은 로그인 후 확인
  42. #42
    Q.

    SELECT employee_id, salary, SUM(salary) OVER(ORDER BY hiredate) FROM employees

    답은 로그인 후 확인
  43. #43
    Q.

    SELECT employee_id, department_id, AVG(salary) OVER(PARTITION BY department_id) FROM employees

    답은 로그인 후 확인
  44. #44
    Q.

    SELECT employee_id, LAG(salary) OVER(ORDER BY hiredate) FROM employees

    답은 로그인 후 확인
  45. #45
    Q.

    SELECT employee_id, LEAD(salary) OVER(ORDER BY hiredate) FROM employees

    답은 로그인 후 확인
  46. #46
    Q.

    SELECT employee_id, NTILE(4) OVER(ORDER BY salary DESC) FROM employees

    답은 로그인 후 확인
  47. #47
    Q.

    SELECT employee_id, CUME_DIST() OVER(ORDER BY salary DESC) FROM employees

    답은 로그인 후 확인
  48. #48
    Q.

    SELECT employee_id, PERCENT_RANK() OVER(ORDER BY salary DESC) FROM employees

    답은 로그인 후 확인
  49. #49
    Q.

    SELECT employee_id, department_id FROM employees WHERE department_id = 10

    답은 로그인 후 확인
  50. #50
    Q.

    TABLE ACCESS FULL

    답은 로그인 후 확인
  51. #51
    Q.

    INDEX RANGE SCAN

    답은 로그인 후 확인
  52. #52
    Q.

    INDEX UNIQUE SCAN

    답은 로그인 후 확인
  53. #53
    Q.

    TABLE ACCESS BY INDEX ROWID

    답은 로그인 후 확인
  54. #54
    Q.

    HASH JOIN

    답은 로그인 후 확인
  55. #55
    Q.

    NL JOIN

    답은 로그인 후 확인
  56. #56
    Q.

    SORT MERGE JOIN

    답은 로그인 후 확인
  57. #57
    Q.

    SELECT /*+ INDEX(employees idx_emp_dept) */ * FROM employees WHERE department_id = 10

    답은 로그인 후 확인
  58. #58
    Q.

    SELECT /*+ FULL(employees) */ * FROM employees

    답은 로그인 후 확인
  59. #59
    Q.

    SELECT /*+ USE_HASH(d) */ * FROM employees e JOIN departments d ON e.department_id = d.department_id

    답은 로그인 후 확인
  60. #60
    Q.

    SELECT /*+ USE_NL(d) */ * FROM employees e JOIN departments d ON e.department_id = d.department_id

    답은 로그인 후 확인
  61. #61
    Q.

    COMMIT

    답은 로그인 후 확인
  62. #62
    Q.

    ROLLBACK

    답은 로그인 후 확인
  63. #63
    Q.

    SAVEPOINT sp1

    답은 로그인 후 확인
  64. #64
    Q.

    ROLLBACK TO sp1

    답은 로그인 후 확인
  65. #65
    Q.

    원자성

    답은 로그인 후 확인
  66. #66
    Q.

    일관성

    답은 로그인 후 확인
  67. #67
    Q.

    격리성

    답은 로그인 후 확인
  68. #68
    Q.

    지속성

    답은 로그인 후 확인
  69. #69
    Q.

    기본키

    답은 로그인 후 확인
  70. #70
    Q.

    외래키

    답은 로그인 후 확인
  71. #71
    Q.

    참조 무결성

    답은 로그인 후 확인
  72. #72
    Q.

    제1정규형

    답은 로그인 후 확인
  73. #73
    Q.

    제3정규형

    답은 로그인 후 확인
  74. #74
    Q.

    반정규화

    답은 로그인 후 확인

처음 5개의 답만 미리 보여드려요. 전체 74개 항목은 로그인 후 학습할 수 있습니다.

이 학습지를 효과적으로 활용하는 방법

  • ① 처음에는 전체 문항을 한 번씩 훑어보며 익숙한 항목과 낯선 항목을 분류하세요.
  • ② 학습 세션에서 "안 외운 문항만" 옵션으로 아직 숙달하지 못한 카드에 집중합니다.
  • ③ 랜덤 순서 학습을 활용해 카드 순서에 의존한 암기를 방지하세요.
  • ④ 키보드 단축키(1·2·A·D·Space)를 쓰면 한 손으로도 빠르게 복습할 수 있습니다.
  • ⑤ 복사(Fork)한 학습지에는 자유롭게 나만의 해설이나 예문을 덧붙여 내 스타일로 다듬어 보세요.

카데미에 로그인하면 이 학습지를
내 학습지로 복사하여 바로 학습할 수 있습니다.