[SQL] 06. 프로그래머스 LV.3 대여 기록이 존재하는 자동차 리스트 구하기

2025. 7. 17. 13:55·프로그래밍 언어/02. SQL

https://school.programmers.co.kr/learn/courses/30/lessons/157341

🔍 문제

  • 다음은 어느 자동차 대여 회사에서 대여 중인 자동차들의 정보를 담은 CAR_RENTAL_COMPANY_CAR 테이블과 자동차 대여 기록 정보를 담은 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블입니다. 
  • CAR_RENTAL_COMPANY_CAR 테이블은 아래와 같은 구조로 되어있며, CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONS 는 각각 자동차 ID, 자동차 종류, 일일 대여 요금(원), 자동차 옵션 리스트를 나타냅니다.

  • 자동차 종류는 '세단', 'SUV', '승합차', '트럭', '리무진' 이 있습니다. 자동차 옵션 리스트는 콤마(',')로 구분된 키워드 리스트(예: '열선시트', '스마트키', '주차감지센서')로 되어있으며, 키워드 종류는 '주차감지센서', '스마트키', '네비게이션', '통풍시트', '열선시트', '후방카메라', '가죽시트' 가 있습니다.
  • CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블은 아래와 같은 구조로 되어있으며, HISTORY_ID, CAR_ID, START_DATE, END_DATE 는 각각 자동차 대여 기록 ID, 자동차 ID, 대여 시작일, 대여 종료일을 나타냅니다.

CAR_RENTAL_COMPANY_CAR 테이블과 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블에서 자동차 종류가 '세단'인 자동차들 중 10월에 대여를 시작한 기록이 있는 자동차 ID 리스트를 출력하는 SQL문을 작성해주세요. 자동차 ID 리스트는 중복이 없어야 하며, 자동차 ID를 기준으로 내림차순 정렬해주세요.


🎯정답

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

❓풀이

  • 두 테이블을 CAR_ID 기준으로 병합 후 WHERE절에서 10월 데이터와 세단 차량만 조회할 수 있도록 조건 생성
  • CAR_ID 기준으로 그룹화, 내림차순 정렬 진행

 

'프로그래밍 언어 > 02. SQL' 카테고리의 다른 글

[SQL] 08. 프로그래머스 LV.3 조건에 맞는 사용자와 총 거래금액 조회하기  (1) 2025.07.18
[SQL] 07. 프로그래머스 LV.3 오랜 기간 보호한 동물(2)  (1) 2025.07.18
[SQL] 05. 프로그래머스 LV.3 조건별로 분류하여 주문상태 출력하기  (1) 2025.07.17
[SQL] 04. 프로그래머스 LV.3 오랜 기간 보호한 동물(1)  (0) 2025.07.17
[SQL] 03. 프로그래머스 LV.3 카테고리 별 도서 판매량 집계하기  (0) 2025.07.17
'프로그래밍 언어/02. SQL' 카테고리의 다른 글
  • [SQL] 08. 프로그래머스 LV.3 조건에 맞는 사용자와 총 거래금액 조회하기
  • [SQL] 07. 프로그래머스 LV.3 오랜 기간 보호한 동물(2)
  • [SQL] 05. 프로그래머스 LV.3 조건별로 분류하여 주문상태 출력하기
  • [SQL] 04. 프로그래머스 LV.3 오랜 기간 보호한 동물(1)
dalleeoppaa
dalleeoppaa
DA, GIS 공부 기록
  • dalleeoppaa
    달래오빠
    dalleeoppaa
  • 전체
    오늘
    어제
    • 분류 전체보기 (113)
      • GIS (22)
        • 01. GIS TIL (13)
        • 02. OpenSource Geo Data (6)
        • 03.사이드 프로젝트 (1)
      • 프로젝트 (6)
        • 01. 상권분석 지도 (3)
        • 02. olist 고객 RFM 분석 (3)
      • PointCloud (1)
      • 프로그래밍 언어 (58)
        • 01. Python (1)
        • 02. SQL (49)
        • 03. C++ (3)
        • 04. TIL (5)
      • 데이터분석 (23)
        • 01. Google Cloud Platform (1)
        • 02. GA4 & GTM (1)
        • 03. LookerStudio (4)
        • 04. Apach Spark (7)
        • 05. 데이터 시각화 (10)
      • 인턴 (2)
        • 01. NPL (2)
        • 02. TIL (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    solvesql
    데이터분석가코테
    프로그래머스lv3
    데이터분석가
    프로그래머스
    데이터분석
    MySQL
    데이터분석취준
    SQL
    프로그래머스코테
    c++독학
    태블로부트캠프
    태블로신병훈련소
    sql코테
    코딩테스트
    GIS
    태블로연습
    postgresql연습
    PostgreSQL
    프로그래머스SQL
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
dalleeoppaa
[SQL] 06. 프로그래머스 LV.3 대여 기록이 존재하는 자동차 리스트 구하기
상단으로

티스토리툴바