문제
FOOD_ORDER
테이블에서 5월 1일을 기준으로 주문 ID, 제품 ID, 출고일자, 출고여부를 조회하는 SQL문을 작성해주세요. 출고여부는 5월 1일까지 출고완료로 이 후 날짜는 출고 대기로 미정이면 출고미정으로 출력해주시고, 결과는 주문 ID를 기준으로 오름차순 정렬해주세요.
💡 조건
sql코드
SELECT order_id, product_id, date_format(out_date, "%Y-%m-%d") out_date,
if(out_date<="2022-05-01","출고완료", if(out_date is null, "출고미정", "출고대기")) as "출고여부"
FROM food_order
ORDER BY order_id
SELECT order_id, product_id, date_format(out_date, "%Y-%m-%d") out_date,
(CASE
WHEN out_date<="2022-05-01" then "출고완료"
WHEN out_date is null then "출고미정"
ELSE "출고대기"
END) as "출고여부"
FROM food_order
ORDER BY order_id
두 경우 모두 코드를 뜯어볼 정도로 어려운건 아니지만 주로 if문을 사용하니까 CASE-WHEN은 안사용하면 잊어버리게된다. 조건문 사용할때 두개 다 사용해보면서 반복해보는수밖에ㅠ...