[SQL] 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기

NoHae·2025년 10월 30일

SQL

목록 보기
83/86

문제 출처

코딩테스트 연습 > GROUP BY > 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기
https://school.programmers.co.kr/learn/courses/30/lessons/157340#

문제 설명

접근 방법

case 구문을 이용하여 대여중, 대여 가능 여부를 출력한다.

case 구문 내부에 where 절 서브쿼리로 '2022-10-16' 이 start_date, end_date 사이에 있는 있는가 판단하여 있다면 "대여중", 없다면 "대여 가능"을 출력한다.

select car_id,(
    case 
    when car_id in (select car_id
                   from car_rental_company_rental_history
                   where '2022-10-16' between start_date and end_date) then "대여중"
    else "대여 가능"
    end
) as AVAILABILTY
from car_rental_company_rental_history
group by car_id
order by car_id desc

알게된 점

where 절을 통해 최대한 간추려야겠다.

문제푼 흔적

profile
노력 해보려고 하는 사람(00년생 소프트웨어융합학과, 24년 12월 부터 백엔드 및 코테 공부 시작)

0개의 댓글