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

takeon·2024년 1월 13일
0

SQL

목록 보기
8/11
post-thumbnail

난이도: Lv. 3
https://school.programmers.co.kr/learn/courses/30/lessons/157341

🌊문제 설정

두 테이블 CAR_RENTAL_COMPANY_CARCAR_RENTAL_COMPANY_RENTAL_HISTORY 이 존재한다.

CAR_RENTAL_COMPANY_CAR

  • Columns: CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONS

CAR_RENTAL_COMPANY_RENTAL_HISTORY

  • Columns: HISTORY_ID, CAR_ID, START_DATE, END_DATE

🌊문제

위의 두 테이블에서 자동차 종류가 '세단'인 자동차들 중 10월에 대여를 시작한 기록이 있는 자동차 ID 리스트를 출력. 중복이 없어야 하며 자동차 ID를 기준으로 내림차 정렬.

🌊문제 풀이

문제의 조건에 따르면 필요한 컬럼은 CAR_RENTAL_COMPANY_CAR 테이블의 CAR_TYPE과 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블의 START_DATE, END_DATE이다. 따라서 두 테이블을 CAR_ID를 기준으로 join하여 사용한다.

SELECT distinct A.CAR_ID
from CAR_RENTAL_COMPANY_CAR A
join CAR_RENTAL_COMPANY_RENTAL_HISTORY B
on A.CAR_ID = B.CAR_ID
where CAR_TYPE = "세단" and MONTH(START_DATE) = 10
order by 1 desc

🌊기억할 부분

  1. join의 사용법

0개의 댓글