다음 [CUST] 테이블과 [GRADE] 테이블 데이터가 주어졌을 때, 아래 3개의 SQL 문을 실행한 결과값(반환되는 행의 수)의 총합(ㄱ+ㄴ+ㄷ)으로 가장 적절한 것은?
CUST 테이블
| CUST_ID | AMOUNT |
|---|---|
| 1 | 100 |
| 2 | 120 |
| 3 | 200 |
GRADE 테이블
| GRADE | MIN_AMT | MAX_AMT |
|---|---|---|
| A | 250 | 350 |
| B | 150 | 249 |
| C | 50 | 149 |
| D | 0 | 49 |
DBMS: Oracle
-- (ㄱ)
SELECT COUNT(*) FROM CUST CROSS JOIN GRADE;
-- (ㄴ)
SELECT COUNT(*) FROM CUST A
INNER JOIN GRADE B ON A.AMOUNT BETWEEN B.MIN_AMT AND B.MAX_AMT;
-- (ㄷ)
SELECT COUNT(*) FROM CUST A
FULL OUTER JOIN GRADE B ON A.AMOUNT BETWEEN B.MIN_AMT AND B.MAX_AMT;정답 4번
- (ㄱ) CROSS: 3건 * 4건 = 12건 - (ㄴ) INNER: 100(C등급), 120(C등급), 200(B등급) 매칭 = 3건 - (ㄷ) FULL OUTER: INNER(3건) + 매칭 안 된 GRADE(A, D등급 2건) = 5건 - 합계: 12 + 3 + 5 = 20
콘텐츠 정보
- 자료 유형
- 편집복원
- 검수 상태
- 내용 검수 완료
- 해설 작성·검수
- 정처LAB 편집 기준
- 최종 검수
- 2026-08-21