[SQL] 연습

[MySQL] 프로그래머스 대여 기록이 존재하는 자동차 리스트 구하기

Simon Yoon 2024. 10. 4. 22:17

문제:

자동차 종류가 '세단'인 자동차들 중 10월에 대여를 시작한 기록이 있는 자동차 ID 리스트를 출력

- 자동차 ID 리스트는 중복 없이 출력

- 자동차 ID를 기준으로 내림차순 정렬

 

해결 방법:

1. 자동차 테이블과 대여 기록 테이블을 CAR_ID 로 INNER JOIN

2. WHERE 절에 자동차 종류가 '세단' 조건 및 10월 조건(MONTH 함수 사용) 설정

3. 중복없는 리스트 출력을 위해 DISTINCT 사용

4. ORDER BY 로 내림차순 정렬

 

예시 코드:

SELECT DISTINCT C.CAR_ID
FROM CAR_RENTAL_COMPANY_CAR AS C
INNER JOIN CAR_RENTAL_COMPANY_RENTAL_HISTORY AS H
ON C.CAR_ID = H.CAR_ID
WHERE C.CAR_TYPE = "세단"
AND MONTH(H.START_DATE) = 10
ORDER BY CAR_ID DESC
;