학습용 기출·복원자료 분류 확인SQLD · 2025년 58회 SQL 기본 및 활용 · 45번
다음은 뷰(View)를 생성하고 이를 조회/수정하는 과정이다. 실행 시 오류(Error)가 발생하는 쿼리는?
CREATE VIEW V1 AS
SELECT DEPTNO, SUM(SAL) AS SS
FROM EMP GROUP BY DEPTNO;
1
SELECT * FROM V1 WHERE SS > 5000;
오답 이유‘SELECT * FROM V1 WHERE SS > 5000;’ 구문은 ‘INSERT INTO V1 (DEPTNO, SS) VALUES (50, 8000);’과 실행 결과나 적용 조건이 다르다. GROUP BY나 집계 함수를 포함한 복합 뷰(View)에는 DML(INSERT, UPDATE 등) 작업을 수행할 수 없습니다. 따라서 1번 보기 ‘SELECT * FROM V1 WHERE SS > 5000;’의 적용 여부를 문제 조건과 대조해야 한다.
2
SELECT A.DEPTNO, B.DNAME FROM V1 A JOIN DEPT B ON A.DEPTNO = B.DEPTNO;
오답 이유‘SELECT A.DEPTNO, B.DNAME FROM V1 A JOIN DEPT B ON A.DEPTNO = B.DEPTNO;’ 구문은 ‘INSERT INTO V1 (DEPTNO, SS) VALUES (50, 8000);’과 실행 결과나 적용 조건이 다르다. GROUP BY나 집계 함수를 포함한 복합 뷰(View)에는 DML(INSERT, UPDATE 등) 작업을 수행할 수 없습니다. 따라서 2번 보기 ‘SELECT A.DEPTNO, B.DNAME FROM V1 A JOIN DEPT B ON A.DEPTNO = B.DEPTNO;’의 적용 여부를 문제 조건과 대조해야 한다.
3
SELECT DEPTNO, AVG(SS) FROM V1 GROUP BY DEPTNO;
오답 이유‘SELECT DEPTNO, AVG(SS) FROM V1 GROUP BY DEPTNO;’ 구문은 ‘INSERT INTO V1 (DEPTNO, SS) VALUES (50, 8000);’과 실행 결과나 적용 조건이 다르다. GROUP BY나 집계 함수를 포함한 복합 뷰(View)에는 DML(INSERT, UPDATE 등) 작업을 수행할 수 없습니다. 따라서 3번 보기 ‘SELECT DEPTNO, AVG(SS) FROM V1 GROUP BY DEPTNO;’의 적용 여부를 문제 조건과 대조해야 한다.
4
INSERT INTO V1 (DEPTNO, SS) VALUES (50, 8000);
정답 근거GROUP BY나 집계 함수를 포함한 복합 뷰(View)에는 DML(INSERT, UPDATE 등) 작업을 수행할 수 없습니다. 따라서 4번 보기 ‘INSERT INTO V1 (DEPTNO, SS) VALUES (50, 8000);’의 적용 여부를 문제 조건과 대조해야 한다.
ANSWER & EXPLANATION
정답 4번
핵심 판단은 4번 ‘INSERT INTO V1 (DEPTNO, SS) VALUES (50, 8000);’입니다. GROUP BY나 집계 함수를 포함한 복합 뷰(View)에는 DML(INSERT, UPDATE 등) 작업을 수행할 수 없습니다.