CAR_RENTAL_COMPANY_CAR 테이블과 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블에서 자동차 종류가 '세단'인 자동차들 중 10월에 대여를 시작한 기록이 있는 자동차 ID 리스트를 출력하는 SQL문을 작성해주세요. 자동차 ID 리스트는 중복이 없어야 하며, 자동차 ID를 기준으로 내림차순 정렬해주세요.
문제링크
조건정리
1. 자동차 종류 세단
2. 10월 대여 시작
3. 고유 자동차 ID
4. 자동차 ID 기준 내림차순 정렬
풀이
1. 두 테이블에 다 정보가 있어야하니까 INNER JOIN
SELECT *
FROM CAR_RENTAL_COMPANY_CAR c
INNER JOIN CAR_RENTAL_COMPANY_RENTAL_HISTORY h
ON c.CAR_ID = h.CAR_ID
SELECT *
FROM CAR_RENTAL_COMPANY_CAR c
INNER JOIN CAR_RENTAL_COMPANY_RENTAL_HISTORY h
ON c.CAR_ID = h.CAR_ID
WHERE c.CAR_TYPE = '세단'
AND DATE_FORMAT(h.START_DATE, '%Y-%m') = '2022-10'
SELECT DISTINCT c.CAR_ID
FROM CAR_RENTAL_COMPANY_CAR c
INNER JOIN CAR_RENTAL_COMPANY_RENTAL_HISTORY h
ON c.CAR_ID = h.CAR_ID
WHERE c.CAR_TYPE = '세단'
AND DATE_FORMAT(h.START_DATE, '%Y-%m') = '2022-10'
ORDER BY c.CAR_ID DESC