20240711 풀이
-- 코드를 입력하세요
SELECT A.HISTORY_ID
, A.CAR_ID
, A.START_DATE
, A.END_DATE
, CASE WHEN DATEDIFF(A.END_DATE, A.START_DATE) + 1 >= 30 THEN '장기 대여'
ELSE '단기 대여' END RENT_TYPE
FROM
(
SELECT HISTORY_ID
, CAR_ID
, DATE_FORMAT(START_DATE, '%Y-%m-%d') START_DATE
, DATE_FORMAT(END_DATE, '%Y-%m-%d') END_DATE
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE YEAR(START_DATE) = '2022'
AND MONTH(START_DATE) = '09'
)A
ORDER BY 1 DESC
20240903 풀이
-- 대여 시작일 2022년 9월
-- 기간이 30일 이상 = '장기 대여' 아니면 '단기 대여'
-- 컬럼 이름은 RENT_TYPE
-- 대여 기록 ID를 기준으로 내림차순 정렬
SELECT *
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY;
SELECT HISTORY_ID
, CAR_ID
, DATE_FORMAT(START_DATE, '%Y-%m-%d') AS START_DATE
, DATE_FORMAT(END_DATE, '%Y-%m-%d') AS END_DATE
, CASE WHEN DATEDIFF(END_DATE, START_DATE)+1 >= 30 THEN '장기 대여'
ELSE '단기 대여' END AS RENT_TYPE
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE START_DATE LIKE '2022-09%'
ORDER BY HISTORY_ID DESC;
https://school.programmers.co.kr/learn/courses/30/lessons/151138
'Code Kata > SQL' 카테고리의 다른 글
[프로그래머스] 문제 64. 헤비 유저가 소유한 장소 (0) | 2024.09.05 |
---|---|
[프로그래머스] 문제 63. 자동차 평균 대여 기간 구하기 (0) | 2024.09.04 |
[프로그래머스] 문제 61. 자동차 대여 기록 (2) | 2024.09.02 |
[프로그래머스] 문제 60. 년, 월, 성별 별 상품 구매 회원 수 구하기 (0) | 2024.08.31 |
[프로그래머스] 문제 59. 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기 (0) | 2024.08.31 |