https://school.programmers.co.kr/learn/courses/30/lessons/157340
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
생각 흐름
- select 절에 바로 start_date와 end_date에서 비교해서 출력하도록 설정
- car_id의 중복 발견
- 대여중인 car_id를 고르고 select 절에서 in절로 대여중인지 대여 가능인지 확인
with rental_car_id as(
select distinct CAR_ID
from CAR_RENTAL_COMPANY_RENTAL_HISTORY
where start_date<='2022-10-16' and '2022-10-16'<=end_date
)
select CAR_ID, (
case when CAR_ID in (select * from rental_car_id) then '대여중'
else '대여 가능'
end
) as AVAILABILITY
from CAR_RENTAL_COMPANY_RENTAL_HISTORY
group by CAR_ID
order by CAR_ID desc
'코딩테스트 > MySQL' 카테고리의 다른 글
[ 프로그래머스 Level 3 ] 즐겨찾기가 가장 많은 식당 정보 출력하기 (MySQL) (0) | 2025.03.11 |
---|---|
[ 프로그래머스 Level 3 ] 대여 기록이 존재하는 자동차 리스트 구하기 (MySQL) (0) | 2025.03.09 |
[ 프로그래머스 Level 3 ] 조건에 맞는 사용자와 총 거래금액 조회하기 (MySQL) (0) | 2025.03.07 |
[프로그래머스 Level 5] 상품을 구매한 회원 비율 구하기 (MySQL) (0) | 2025.03.06 |
[프로그래머스 Level 5] 멸종위기의 대장균 찾기 (MySQL) (0) | 2025.03.04 |