inblog logo
|
stupefyee
    SQL문제풀기

    [SQL 문제 풀이] 조건별로 분류하여 주문상태 출력하기

    프로그래머스 (131113)
    Stupefyee's avatar
    Stupefyee
    Apr 07, 2025
    [SQL 문제 풀이] 조건별로 분류하여 주문상태 출력하기
    Contents
    내가 작성한 쿼리
    school.programmers.co.kr
    https://school.programmers.co.kr/learn/courses/30/lessons/131113
    notion image
     

    내가 작성한 쿼리

    Oracle

    SELECT ORDER_ID, PRODUCT_ID, TO_CHAR(OUT_DATE,'YYYY-MM-DD') OUT_DATE, CASE WHEN OUT_DATE <= DATE '2022-05-01' THEN '출고완료' WHEN OUT_DATE > DATE '2022-05-01' THEN '출고대기' ELSE '출고미정' END AS 출고여부 FROM FOOD_ORDER ORDER BY ORDER_ID;

    MySQL

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

    차이점

    • 날짜 변환 방식의 차이
    • 묵시적 형변환 범위의 차이
      • MySQL : 넓은 범위를 지원
      • Oracle : 좁은 범위를 지원 → 문자열 ↔ 숫자, 문자열 ↔ 날짜 지원
     
    Share article
    Contents
    내가 작성한 쿼리

    stupefyee

    RSS·Powered by Inblog