FOOD_ORDER 테이블에서 2022년 5월 1일을 기준으로 주문 ID, 제품 ID, 출고일자, 출고여부를 조회하는 SQL문을 작성해주세요. 출고여부는 2022년 5월 1일까지 출고완료로 이 후 날짜는 출고 대기로 미정이면 출고미정으로 출력해주시고, 결과는 주문 ID를 기준으로 오름차순 정렬해주세요.
문제링크
조건정리
1. 출고날짜 2022-5-1까지 : 출고완료
풀이
SELECT CASE WHEN DATE_FORMAT(OUT_DATE,'%Y-%m-%d') <= '2022-05-01' THEN '출고완료'
WHEN OUT_DATE IS NULL THEN '출고미정'
ELSE '출고대기' END AS '출고여부'
FROM FOOD_ORDER
SELECT ORDER_ID,
PRODUCT_ID,
DATE_FORMAT(OUT_DATE,'%Y-%m-%d'),
CASE WHEN DATE_FORMAT(OUT_DATE,'%Y-%m-%d') <= '2022-05-01' THEN '출고완료'
WHEN OUT_DATE IS NULL THEN '출고미정'
ELSE '출고대기' END AS '출고여부'
FROM FOOD_ORDER
ORDER BY ORDER_ID
이까지 했는데 정답이 아니여서 확인해보니 OUT_DATE 포맷이 잘못되었다는 것을 알게됨
SELECT ORDER_ID,
PRODUCT_ID,
DATE_FORMAT(OUT_DATE,'%Y-%m-%d'),
CASE WHEN DATE_FORMAT(OUT_DATE,'%Y-%m-%d') <= '2022-05-01' THEN '출고완료'
WHEN OUT_DATE IS NULL THEN '출고미정'
ELSE '출고대기' END AS '출고여부'
FROM FOOD_ORDER
ORDER BY ORDER_ID