다음 두 테이블과 SQL문을 보고 결과 행의①이름과②성과급을 각각 쓰시오.
SELECT e.이름, b.성과급
FROM 직원 e, 보상 b
WHERE e.직원번호 = b.직원번호
AND b.성과급 >= 500;| 직원번호 | 이름 |
|---|---|
| 101 | 이순신 |
| 102 | 강감찬 |
| 103 | 김유신 |
| 직원번호 | 성과급 |
|---|---|
| 101 | 1000 |
| 102 | 300 |
| 103 | 450 |
모범답안
① 이순신, ② 1000
풀이와 판단 근거
WHERE의 e.직원번호 = b.직원번호 조건으로 직원과 보상의 같은 직원번호 행을 결합하면 (이순신, 1000), (강감찬, 300), (김유신, 450)이 된다. 이어서 b.성과급 >= 500을 적용하면 1000인 행만 남는다.
SELECT 열 순서가 이름, 성과급이므로 답은 ① 이순신, ② 1000이다.
자주 틀리는 지점
- 콤마 조인을 카티션 곱 결과 그대로 세고 직원번호 조인 조건을 적용하지 않음
- 성과급 500 ‘초과’로 읽거나 500 이상이라는 경계 조건을 놓침
- SELECT 열 순서를 바꾸어 성과급과 이름을 반대로 입력함
자동 판정 방식
한글·영문 동의어와 문항별 필수 개념을 확인하며, 정답 단어가 부정되거나 반대 개념과 함께 쓰이면 자동 정답으로 확정하지 않습니다. 부분점수는 ITPASSLAB의 학습용 예상 점수입니다.