문제
다음 SQL의 결과는?
SQLSELECT NVL2(NULL, 'NOT_NULL', 'IS_NULL') FROM DUAL;
① NULL ② NOT_NULL ③ IS_NULL ④ 오류
정답
3번
해설
NVL2(expr1, expr2, expr3)는 expr1이 NULL이 아니면 expr2를, NULL이면 expr3을 반환합니다. 첫 번째 인수가 NULL이므로 세 번째 인수인 'IS_NULL'이 반환됩니다. ①은 NULL을 반환하는 함수가 아니고, ②는 첫 번째 인수가 NULL이 아닐 때 반환되는 값이며, ④는 문법적으로 올바른 함수이므로 오류가 발생하지 않습니다.