대여 기록이 존재하는 자동차 리스트 구하기

수이·2025년 3월 13일
0

🟢 코드카타 / SQL

목록 보기
46/81
post-thumbnail

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
  1. 대여 시작, 세단 조건 넣기
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'
  1. 셀렉+정렬
    중복되지 않는 아이디이니 DISTINCT 사용
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

0개의 댓글

관련 채용 정보