학습용 기출·복원자료 분류 확인SQLD · 2024년 54회 SQL 기본 및 활용 · 20번
아래 SQL 에 대한 결과로 알맞은 것은?
1
B가 Null이 아니면 항상 B값을 반환한다.
오답 이유‘B가 Null이 아니면 항상 B값을 반환한다.’ 구문은 ‘A가 Null이 아닐 경우 A값을 반환한다.’과 실행 결과나 적용 조건이 다르다. NVL(A,B)는 A가 NULL이면 B를 반환하고, NULLIF(A,B)는 두 값이 같으면 NULL을 반환한다. COALESCE는 인수 중 처음으로 NULL이 아닌 값을 반환한다. 따라서 1번 보기 ‘B가 Null이 아니면 항상 B값을 반환한다.’의 적용 여부를 문제 조건과 대조해야 한다.
2
A와 B가 Null일 경우 100을 반환한다.
오답 이유‘A와 B가 Null일 경우 100을 반환한다.’ 구문은 ‘A가 Null이 아닐 경우 A값을 반환한다.’과 실행 결과나 적용 조건이 다르다. NVL(A,B)는 A가 NULL이면 B를 반환하고, NULLIF(A,B)는 두 값이 같으면 NULL을 반환한다. COALESCE는 인수 중 처음으로 NULL이 아닌 값을 반환한다. 따라서 2번 보기 ‘A와 B가 Null일 경우 100을 반환한다.’의 적용 여부를 문제 조건과 대조해야 한다.
3
A가 Null일 경우에는 언제나 50*B 를 반환한다.
오답 이유‘A가 Null일 경우에는 언제나 50*B 를 반환한다.’ 구문은 ‘A가 Null이 아닐 경우 A값을 반환한다.’과 실행 결과나 적용 조건이 다르다. NVL(A,B)는 A가 NULL이면 B를 반환하고, NULLIF(A,B)는 두 값이 같으면 NULL을 반환한다. COALESCE는 인수 중 처음으로 NULL이 아닌 값을 반환한다. 따라서 3번 보기 ‘A가 Null일 경우에는 언제나 50*B 를 반환한다.’의 적용 여부를 문제 조건과 대조해야 한다.
4
A가 Null이 아닐 경우 A값을 반환한다.
정답 근거NVL(A,B)는 A가 NULL이면 B를 반환하고, NULLIF(A,B)는 두 값이 같으면 NULL을 반환한다. COALESCE는 인수 중 처음으로 NULL이 아닌 값을 반환한다. 따라서 4번 보기 ‘A가 Null이 아닐 경우 A값을 반환한다.’의 적용 여부를 문제 조건과 대조해야 한다.
ANSWER & EXPLANATION
정답 4번
핵심 판단은 4번 ‘A가 Null이 아닐 경우 A값을 반환한다.’입니다. NVL(A,B)는 A가 NULL이면 B를 반환하고, NULLIF(A,B)는 두 값이 같으면 NULL을 반환한다. COALESCE는 인수 중 처음으로 NULL이 아닌 값을 반환한다.