프로그래머스_조건별로 분류하여 주문상태 출력하기

임정민·2023년 5월 22일

SQL 문제풀이

목록 보기
37/53
post-thumbnail

SQL 공부중 입니다. ✍✍✍

문제

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

풀이

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

CASE-WHEN 구문을 활용하여 OUT_DATE에 값에 따라 '출고미정', '출고완료', '출고대기' 값을 부여했습니다. 이때, 2022년 05월 1일자까지 출고된 물품들을 구별하기 위해 TIMESTAMPDIFF(DAY,'컬럼1','컬럼2')구문을 활용하였습니다.🦝🦝🦝

CASE-WHEN 대신 IF문으로 해결한 풀이도 볼 수 있었습니다.

SELECT ORDER_ID , PRODUCT_ID , DATE_FORMAT(OUT_DATE,'%Y-%m-%d') AS OUT_DATE, 
IF(OUT_DATE <='2022-05-01','출고완료',IF(OUT_DATE>'2022-05-01','출고대기','출고미정'))출고여부
FROM FOOD_ORDER
ORDER BY ORDER_ID

감사합니다.🐪🐪🐪

profile
https://github.com/min731

0개의 댓글