문제
다음 SQL 실행 후 결과는? (Oracle)
SQLCREATE TABLE SCORE (ID NUMBER, POINT NUMBER); INSERT INTO SCORE VALUES (1, 80), (2, 90), (3, 70), (4, 95); UPDATE SCORE SET POINT = POINT + 10 WHERE ROWNUM <= 2; SELECT MAX(POINT) FROM SCORE;
① 90 ② 95 ③ 100 ④ 105
정답
3번
해설
ROWNUM <= 2 조건으로 처음 2개 행(ID=1,2)의 POINT가 각각 90, 100으로 증가합니다. 원래 데이터: (1,80), (2,90), (3,70), (4,95). 업데이트 후: (1,90), (2,100), (3,70), (4,95). 업데이트된 값 중 최대값은 100이고, 원래 있던 95도 그대로 남아있지만 100이 더 크므로 MAX(POINT) = 100입니다.