문제풀이/프로그래머스

[MYSQL/Lv3] 조건별로 분류하여 주문상태 출력하기

bbugi 2023. 7. 20. 12:46

https://school.programmers.co.kr/learn/courses/30/lessons/131113

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr


MySQL - LV3 문제

 

프로그래머스 sql 문제는 난이도에 의미가 있나 싶다. 그냥 정답률 높은 문제 순으로 풀고 있는 중

 

이번 문제에서 신경써야 할 점은

1. DATE_FORMAT으로 출력 형식 동일하게 변경

2. CASE WHEN 을 사용한 조건별 반환값 지정

두 가지를 신경써서 작성하면 쉽게 풀 수 있는 문제였다.


[정답 코드]

SELECT ORDER_ID, PRODUCT_ID, DATE_FORMAT(OUT_DATE,'%Y-%m-%d') AS OUT_DATE, 
CASE WHEN OUT_DATE <= '2022-05-01' THEN '출고완료'
    WHEN OUT_DATE IS NULL THEN '출고미정'
    ELSE '출고대기'
    END AS 출고여부
FROM FOOD_ORDER