문제
다음 SQL 실행 후 결과는? (SQL Server)
[NUMBERS] VAL: 10,20,30,40,50
SQLDELETE FROM NUMBERS WHERE VAL IN ( SELECT TOP(2) VAL FROM NUMBERS ORDER BY VAL ASC ); SELECT MAX(VAL) FROM NUMBERS;
① 30 ② 40 ③ 50 ④ NULL
정답
3번
해설
서브쿼리에서 ORDER BY VAL ASC와 TOP(2)를 사용해 가장 작은 값 10, 20을 먼저 선택한 뒤 삭제합니다. 남는 데이터는 30, 40, 50이고, 이 중 MAX(VAL)은 50입니다.