문제
다음 SQL의 실행 결과는? (Oracle)
SQLSELECT NVL('', 'EMPTY'), NVL2('TEST', 'Y', 'N'), NULLIF('A', 'A') FROM DUAL;
① '', Y, A ② EMPTY, Y, NULL ③ EMPTY, N, A ④ '', N, NULL
정답
2번
해설
NVL('', 'EMPTY')는 빈 문자열이 NULL로 처리되어 'EMPTY' 반환. NVL2('TEST', 'Y', 'N')는 첫 번째 값이 NULL이 아니므로 'Y' 반환. NULLIF('A', 'A')는 두 값이 같으므로 NULL 반환.