애플파이썬

[프로그래머스] Lv.1 자동차 대여 기록에서 장기/단기 대여 구분하기 (SQL) 본문

SQL

[프로그래머스] Lv.1 자동차 대여 기록에서 장기/단기 대여 구분하기 (SQL)

유진파이 2025. 2. 28. 13:45

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

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 


SELECT HISTORY_ID, CAR_ID, DATE_FORMAT(START_DATE, '%Y-%m-%d'), DATE_FORMAT(END_DATE, '%Y-%m-%d'),
    CASE 
        WHEN DATEDIFF(END_DATE, START_DATE) + 1 >= 30 THEN '장기 대여' 
        ELSE '단기 대여'
    END AS RENT_TYPE
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE START_DATE BETWEEN '2022-09-01' AND '2022-09-30'
ORDER BY HISTORY_ID DESC;

 

  • 우선 출력할 때 날짜 타입이 시간없이 숫자로 출력되는 타입이라 DATE_FORMAT(START_DATE, '%Y-%m-%d') 사용
  • 새로운 열을 만들어 줄 때는 CASE, THEN, ELSE, END 사용하기!
  • 9월달 대여기록이기 때문에 WHERE로 9월 필터링 !

오랜만에 SQL 하니까 재밌다... 알고리즘보다 129839849배..