부제:
조건별로 분류하여 주문상 출력하기, 레벨 3
1. 문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/131113
2. 정답 코드:
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 > '2022-05-01'THEN '출고대기'
ELSE '출고미정'
END AS '출고여부'
FROM FOOD_ORDER
ORDER BY ORDER_ID ASC
3. 오류 상황:
SELECT
ORDER_ID,
PRODUCT_ID,
DATE_FORMAT(OUT_DATE, '%Y-%m-%d') as OUT_DATE,
CASE
WHEN OUT_DATE < '2022-05-01'THEN '출고완료'
ELSE '출고미정'
END AS '출고여부'
FROM FOOD_ORDER
ORDER BY ORDER_ID ASC
=> CASE 함수 오기재
4. 시도 방법: 2022년 5월 1일 기준으로 출고완료, 출고대기, 출고여부로 나눠야 함.
5. 최종 문제 해결 방법: SELECT문에 CASE 함수를 이용해 2022년 5월 1일 기준으로 이전에는 '출고완료', 이후 '출고미정', 이외 '출고여부'가 출력되게 수정
'SQL 알고리즘 코드카타' 카테고리의 다른 글
| SQL 알고리즘 코드카타 14일차(1) 26.01.12(월) (0) | 2026.01.12 |
|---|---|
| SQL 알고리즘 코드카타 13일차(5) 26.01.11(일) (0) | 2026.01.11 |
| SQL 알고리즘 코드카타 13일차(3) 26.01.11(일) (0) | 2026.01.11 |
| SQL 알고리즘 코드카타 13일차(2) 26.01.11(일) (0) | 2026.01.11 |
| SQL 알고리즘 코드카타 13일차(1) 26.01.11(일) (0) | 2026.01.11 |