Oracle에서 다음 DECODE 식과 항상 같은 결과를 내는 CASE… | [SQLD] SQL 개발자 기출유형 모의고사 6회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 6회
Oracle에서 다음 DECODE 식과 항상 같은 결과를 내는 CASE 식은?
DECODE(진료구분, 'O', '외래', '기타')

[보기 식]

㉠ CASE 진료구분 WHEN 'O' THEN '외래' ELSE '기타' END
㉡ CASE WHEN 진료구분 = 'O' THEN '기타' ELSE '외래' END
㉢ CASE 진료구분 WHEN 'O' THEN '외래' END
㉣ CASE 진료구분 WHEN '외래' THEN 'O' ELSE '기타' END
1
㉣
2
㉠
3
㉢
4
㉡
해설

DECODE(열, 비교값, 결과, 기본값)은 열이 비교값과 같으면 결과를, 아니면 기본값을 돌려주므로 단순 CASE 에 ELSE '기타' 를 둔 식과 같다.

진료구분이 'O' 이면 '외래', 그 밖의 값이나 NULL 이면 '기타' 가 나온다.

  • THEN 과 ELSE 결과를 서로 바꾸면 '외래' 와 '기타' 가 뒤집힌다.
  • ELSE 를 빼면 'O' 가 아닌 행은 NULL 이 된다.
  • 비교값과 결과를 맞바꾸면 진료구분이 '외래' 인 행만 'O' 가 된다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[SQLD] SQL 개발자 기출유형 모의고사 6회 50문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요SQLD SQL 개발자 실전 모의고사 암기장 전체 보기