정보처리기사 실기에서 SQL로 계속 떨어지는 실수 3가지
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
정보처리기사 실기에서 SQL 문제가 20문제 중 6~8개를 차지하죠. 그런데, 이 부분에서만 과락하는 응시자들이 많습니다. 합격자들도 "SQL은 자신 있었는데…" 하면서도 떨어지는 공통적인 실수 3가지를 소개합니다.
1. 쉼표(,)와 따옴표(') 생략: 문법 오류로 0점 처리
SQL에서 가장 치명적인 실수는 기본적인 문법 실수입니다. SELECT 절에서 칼럼을 여러 개 나열할 때 쉼표(,) 누락이나 문자열 조건에서 따옴표(') 빠뜨리기가 자주 발생합니다.
실제 감점 사례:
- 문제: 부서코드, 부서명 출력
- 틀린 답: SELECT 부서코드 부서명 FROM 부서 (쉼표 누락 → 0점)
- 올바른 답: SELECT 부서코드, 부서명 FROM 부서
- 문제: 부서명이 '영업부'인 직원 조회
- 틀린 답: WHERE 부서명 = 영업부 (따옴표 누락 → 0점)
- 올바른 답: WHERE 부서명 = '영업부'
해결법
ᄋ 답안 작성 전 문장 끝까지 쉼표·따옴표 스캔
ᄋ 특히 WHERE 절 문자열 조건은 작은따옴표 2개 무조건 확인
2. GROUP BY와 HAVING 위치 착각: 집계 결과 왜곡
GROUP BY와 HAVING을 헷갈려서 감점받는 경우가 자주 있습니다. HAVING은 GROUP BY 뒤에만 올 수 있고, 집계 함수와 함께 사용해야 하죠,
감점 패턴
- 문제: 부서별 평균 급여 300만 원 이상 부서만 조회
- 틀린 답 ①: WHERE AVG(급여) > 3000000 (HAVING이 아님 → 오류)
- 틀린 답 ②: GROUP BY 부서코드 HAVING 급여 > 3000000 (집계 함수 누락 → 부분 감점)
- 올바른 답: GROUP BY 부서코드 HAVING AVG(급여) > 3000000
해결법
ᄋ GROUP BY (그룹화) → HAVING (그룹 조건) 순서 외우기
ᄋ HAVING 뒤에는 반드시 COUNT/SUM/AVG 등 집계함수!
3. JOIN 조건에서 칼럼명 오타: 테이블 연결 실패
두 테이블을 연결할 때는 공통 칼럼명을 정확히 작성해야 하는데, 오타나 대소문자 실수때문에 연결이 안 되는 경우가 흔히 일어납니다.
실제 실수 예시
- 문제: 직원과 부서 테이블 조인하여 직원명, 부서명 출력
- 틀린 답 ①: 부서코드 = 부서명 (잘못된 칼럼명)
- 틀린 답 ②: WHERE 사번 = 부서코드 (연결 칼럼 틀림)
- 올바른 답: ON 직원.부서코드 = 부서.부서코드
감점 원인
ᄋ 테이블 칼럼명 대소문자 구분 안 함
ᄋ INNER JOIN과 WHERE 혼동
ᄋ 별칭(alias) 사용 시 AS 생략 문제
해결법
ᄋ JOIN할 때 칼럼명 3번 확인
ᄋ INNER JOIN 테이블2 ON 테이블1.공통칼럼 = 테이블2.공통칼럼
마무리 조언
정보처리기사 실기 SQL은 문법 100% + 공통 칼럼 정확히가 매우 중요한 포인트라 할 수 있죠. 위에서 언급한 실수 3가지를 피할 수 있다면 평균 4~5 문제는 충분히 맞힐 수 있습니다. 다음 실기에서는 SQL 과락 탈출하여 합격을 기대합니다.
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
댓글