💯 Coding Test

[프로그래머스] 대여 횟수가 많은 자동차들의 월별 대여 횟수 구하기

date
Jul 8, 2023
slug
programmers151139
author
status
Public
tags
SQL
summary
GROUP BY
type
Post
thumbnail
updatedAt
Jul 10, 2023 02:02 PM
category
💯 Coding Test

[문제 링크]

[풀이 코드]

첫 번째 시도

# 오답 코드 SELECT EXTRACT(MONTH FROM START_DATE) AS MONTH, CAR_ID, COUNT(*) AS RECORDS FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE START_DATE BETWEEN '2022-07-31' AND '2022-11-01' GROUP BY MONTH, CAR_ID HAVING COUNT(*) >= 5 ORDER BY MONTH, CAR_ID DESC
notion image
이 코드가 왜… 답이 아닐까 고민했다.
START DATE가 2022-08-01 ~ 2022-10-31 기간 동안 5회 이상 대여한 월별 자동차 ID별 기록 수를 구하는 문제인데
특정 월의 대여 횟수가 0이면 결과에서 제외한다.
 

두…번째 시도…

WITH절은 안 써봐서 서브쿼리로만 풀었는데 적용해 봤다..
# 오답 WITH A1 AS (SELECT CAR_ID, MONTH(START_DATE) AS MONTH, COUNT(*) AS RECORDS FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE START_DATE BETWEEN '2022-08-01' AND '2022-10-31' GROUP BY CAR_ID, MONTH HAVING COUNT(*)>=5) SELECT MONTH, CAR_ID, RECORDS FROM A1 WHERE RECORDS > 0 ORDER BY MONTH, CAR_ID DESC
근데..
뭐가 문제야… Say something…
뭐가 문제야… Say something…
notion image
 
 
 
해결 방안…