✅ 코드
SELECT MONTH(START_DATE) AS MONTH
, CAR_ID
, COUNT(HISTORY_ID) AS RECORDS
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE CAR_ID IN (SELECT CAR_ID
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE MONTH(START_DATE) IN (8, 9, 10)
GROUP BY CAR_ID
HAVING COUNT(HISTORY_ID) >= 5)
AND MONTH(START_DATE) IN (8, 9, 10)
GROUP BY MONTH, CAR_ID
HAVING COUNT(HISTORY_ID) >= 1
ORDER BY MONTH
, CAR_ID DESC;
우선적으로 IN 연산자와 함께 다중행 서브쿼리를 사용하여 해당 기간 동안 대여 횟수가 5회 이상인 자동차들의 ID값을 조건으로 설정했습니다.
이후 바깥쪽 쿼리에서 8-10월에 해당하는 값들을 한 번 더 필터링하기 위해 2번째 조건으로 추가했습니다.
'알고리즘' 카테고리의 다른 글
[SQL]해커랭크 Top Competitors (0) | 2023.12.16 |
---|---|
[SQL]해커랭크 The Report (0) | 2023.12.16 |
[SQL]프로그래머스 Lv.3 자동차 대여기록에서 대여중/대여 가능 여부 구하기 (0) | 2023.12.15 |
[SQL]프로그래머스 Lv.4 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기 (0) | 2023.09.26 |
[SQL]프로그래머스 Lv.4 입양 시각 구하기(2) (0) | 2023.09.26 |