[프로그래머스] 자동차 대여 기록에서 장기/단기 대여 구분하기 (ORACLE)
2023. 1. 16. 16:38ㆍ프로그래머스
반응형
문제 설명
다음은 어느 자동차 대여 회사의 자동차 대여 기록 정보를 담은 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블입니다. CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블은 아래와 같은 구조로 되어있으며, HISTORY_ID, CAR_ID, START_DATE, END_DATE는 각각 자동차 대여 기록 ID, 자동차 ID, 대여 시작일, 대여 종료일을 나타냅니다.
Column name | Type | Nullable |
HISTORY_ID | INTEGER | FALSE |
CAR_ID | INTEGER | FALSE |
START_DATE | DATE | FALSE |
END_DATE | DATE | FALSE |
문제
CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블에서 대여 시작일이 2022년 9월에 속하는 대여 기록에 대해서 대여 기간이 30일 이상이면 '장기 대여' 그렇지 않으면 '단기 대여'로 표시하는 컬럼(컬럼명: RENT_TYPE)을 추가하여 대여기록을 출력하는 SQL문을 작성해 주세요. 결과는 대여 기록 ID를 기준으로 내림차순 정렬해 주세요.
풀이
SELECT HISTORY_ID --자동차 대여 기록 ID
, CAR_ID --자동차 ID
, TO_CHAR(START_DATE, 'YYYY-MM-DD') AS START_DATE --대여 시작일
, TO_CHAR(END_DATE, 'YYYY-MM-DD') AS END_DATE --대여 종료일
, CASE WHEN (END_DATE - START_DATE + 1) >= 30 THEN '장기 대여'
ELSE '단기 대여' END AS RENT_TYPE --대여 기간이 30일 이상이면 '장기 대여' 그렇지 않으면 '단기 대여'
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE TO_CHAR(START_DATE, 'YYMM') = '2209' --조건1: 대여 시작일이 2022년 9월에 속하는 대여 기록
ORDER BY HISTORY_ID DESC; --대여 기록 ID를 기준으로 내림차순 정렬
반응형
'프로그래머스' 카테고리의 다른 글
[프로그래머스] 가격대 별 상품 개수 구하기 (ORACLE) (0) | 2023.01.20 |
---|---|
[프로그래머스] 카테고리 별 상품 개수 구하기 (ORACLE) (0) | 2023.01.19 |
[프로그래머스] 평균 일일 대여 요금 구하기 (ORACLE) (0) | 2023.01.16 |
[프로그래머스] 조건에 맞는 도서 리스트 출력하기 (ORACLE) (0) | 2023.01.13 |
[프로그래머스] 과일로 만든 아이스크림 고르기 (ORACLE) (0) | 2023.01.12 |