MySQL, 특정기간 동안 대여 가능한 자동차들의 대여비용 구하기
프로그래밍 언어 : SQL
난이도 : Level 4
문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/157339
■ 작성 코드
-- 코드를 입력하세요
SELECT A.CAR_ID,A.CAR_TYPE, ROUND(A.DAILY_FEE*30*(100-C.DISCOUNT_RATE)/100) AS FEE
FROM CAR_RENTAL_COMPANY_CAR A
JOIN CAR_RENTAL_COMPANY_RENTAL_HISTORY B ON A.CAR_ID = B.CAR_ID
JOIN CAR_RENTAL_COMPANY_DISCOUNT_PLAN C ON A.CAR_TYPE = C.CAR_TYPE
WHERE A.CAR_ID NOT IN (
SELECT CAR_ID
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE END_DATE > '2022-11-01' AND START_DATE < '2022-12-01'
) AND C.DURATION_TYPE='30일 이상'
GROUP BY A.CAR_ID
HAVING FEE>=500000 AND FEE<2000000
ORDER BY FEE DESC, CAR_TYPE, CAR_ID DESC
;
■ SQL 강의
반응형
'Programming Test > SQL' 카테고리의 다른 글
[PCSQL] SQL, FrontEnd 개발자 찾기 (0) | 2025.02.05 |
---|---|
[PCSQL] SQL, 자동차 대여 기록 별 대여 금액 구하기 (0) | 2025.02.01 |
[PCSQL] SQL, 특정 세대의 대장균 찾기 (0) | 2025.01.31 |
[PCSQL] SQL, 입양 시각 구하기(2) (0) | 2025.01.28 |
[PCSQL] SQL, 오프라인/온라인 판매 데이터 통합하기 (0) | 2025.01.27 |