학습용 기출·복원자료 분류 확인SQLD · 2024년 53회 SQL 기본 및 활용 · 21번
설명 ㄱ~ㄷ에 대응하는 Oracle 함수의 순서로 옳은 것은?
ㄱ. A가 NULL이면 B를 반환한다.
ㄴ. A와 B가 같으면 NULL을 반환한다.
ㄷ. 여러 인수 중 처음으로 NULL이 아닌 값을 반환한다.
1
NULLIF-NVL-COALESCE
오답 이유NULL 여부 치환과 두 값 동일 시 NULL 반환의 위치를 서로 바꾼 조합이다. 따라서 1번 보기 ‘NULLIF-NVL-COALESCE’의 적용 여부를 문제 조건과 대조해야 한다.
2
NVL-NULLIF-COALESCE
정답 근거NVL(A,B)는 A가 NULL이면 B를 반환하고, NULLIF(A,B)는 두 값이 같으면 NULL을 반환한다. COALESCE는 인수 중 처음으로 NULL이 아닌 값을 반환한다. 따라서 2번 보기 ‘NVL-NULLIF-COALESCE’의 적용 여부를 문제 조건과 대조해야 한다.
3
NVL-COALESCE-NULLIF
오답 이유둘째 설명은 같은 두 값을 NULL로 만드는 NULLIF이며 COALESCE가 아니다. 따라서 3번 보기 ‘NVL-COALESCE-NULLIF’의 적용 여부를 문제 조건과 대조해야 한다.
4
COALESCE-NULLIF-NVL
오답 이유첫 설명은 여러 인수의 첫 비NULL값이 아니라 두 인수 치환을 수행하는 NVL이다. 따라서 4번 보기 ‘COALESCE-NULLIF-NVL’의 적용 여부를 문제 조건과 대조해야 한다.
ANSWER & EXPLANATION
정답 2번
핵심 판단은 2번 ‘NVL-NULLIF-COALESCE’입니다. NVL(A,B)는 A가 NULL이면 B를 반환하고, NULLIF(A,B)는 두 값이 같으면 NULL을 반환한다. COALESCE는 인수 중 처음으로 NULL이 아닌 값을 반환한다.