DECODE와 CASE문
포스트
취소

DECODE와 CASE문

해당 포스트는 SQLD를 학습하며 정리한 내용에 대한 포스트입니다.


이론을 학습한 내용을 정리하고 퀴즈, 기출문제 등을 기록하려고 합니다.


🌈 DECODE와 CASE문

💻 DECODE

DECODE문으로 IF문을 구현할 수 있다. 즉, 특정 조건이 참이면 A, 거짓이면 B로 응답한다.

DECODE

  • 위의 예는 EMPNO와 1000과 비교해서 같으면 TRUE를 출력하고 다르면 FALSE를 출력한다.

DECODE

  • 위의 예는 EMP테이블에서 EMPNO와 1000과 비교해서 같으면 TRUE를 출력하고 다르면 FALSE를 출력한다.


💻 CASE

CASE문은 IF〜THEN 〜ELSE-END의 프로그래밍 언어처럼 조건문을 사용할 수 있다

조건을 WHEN구에 사용하고 THEN은 해당 조건이 참이면 실행되고 거짓이면 ELSE구가 실행된다.

CASE 문의 조건 내부에서는 별칭을 사용할 수 없다.

CASE

CASE

  • 위의 예는 EMPNO가 1000이면 A를 출력하고 1001이면 B를 출력한다. 만약 그렇지 않으면 C를 출력한다.


SEARCHED CASE EXPRESSION vs. SIMPLE CASE EXPRESSION

SEARCHED CASE EXPRESSION

SELECT t.id,
CASE WHEN t.color = 1 THEN 'Red'
WHEN t.color = 2 THEN ‘Blue’
WHEN t.color = 3 THEN ‘Green’
ELSE ‘NoColor’ END AS color
FROM @t t

  • 위의 예시를 보면 Searched Case Expression에서는 t.color의 조건에 따라 결과값을 리턴해주는 것을 확인할 수 있다.

SIMPLE CASE EXPRESSION

SELECT t.id,
CASE t.color WHEN 1 THEN 'Red'
WHEN 2 THEN ‘Blue’
WHEN 3 THEN ‘Green’
ELSE ‘NoColor’ END AS Color
FROM @t t

  • 위의 예시를 보면 Simple Case Expression에서는 t.color가 무슨 값인지에 따라서 리턴값이 정해진다.


🎯 추가 내용

👉


📚 레퍼런스

정미나. (유튜브 선생님에게 배우는) 유선배 SQL개발자(SQLD) 과외노트 / [정미나 저] (2023). Print.

한국데이터산업진흥원. SQL 자격검정 실전문제 : 국가공인 SQL전문가·국가공인 SQL개발자 / 한국데이터산업진흥원 [편] (2020). Print.

SQL 개발자 (SQLD) 자격증 따기 Part.2 / [유용한IT학습]

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.