https://school.programmers.co.kr/learn/courses/30/lessons/151139
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
문제 해석
1. 2022년 8월부터 2022년 10월까지의 차량 대여 회수 구하기
2. 총 대여회수가 5회인 CAR_ID만 추출하기
문제 풀이
1. 2022년 8월부터 2022년 10월까지의 총 대여회수가 5회인 CAR_ID를 인라인 뷰에서 테이블로 추출
2. 해당 인라인뷰를 CAR_ID 와 INNER JOIN하여 연결
3. 그룹바이로 MONTH와 CAR_ID를 묶어서 월별, CAR_ID별로 집계
SELECT MONTH(A.START_DATE) AS MONTH, A.CAR_ID , COUNT(A.CAR_ID) AS 'RECORDS'
FROM
(
SELECT CAR_ID, COUNT(CAR_ID) AS 'COUNT'
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE START_DATE BETWEEN '2022-08-01' AND '2022-10-31'
GROUP BY CAR_ID
HAVING COUNT(CAR_ID) >= 5
ORDER BY CAR_ID
) AS B
INNER JOIN CAR_RENTAL_COMPANY_RENTAL_HISTORY AS A
ON A.CAR_ID = B.CAR_ID
WHERE A.START_DATE BETWEEN '2022-08-01' AND '2022-10-31'
GROUP BY MONTH(A.START_DATE), A.CAR_ID
HAVING RECORDS >0
ORDER BY MONTH, A.CAR_ID DESC
'코딩테스트 > SQL' 카테고리의 다른 글
[SQL Lv3] 특정 조건을 만족하는 물고기별 수와 최대 길이 구하기 (0) | 2024.12.02 |
---|---|
[SQL Lv3] 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기 (1) | 2024.12.02 |
[SQL Lv4] 입양 시각 구하기(2) (0) | 2024.11.26 |
[SQL Lv2] 입양 시각 구하기(1) (0) | 2024.11.26 |
[SQL Lv3] 즐겨찾기가 가장 많은 식당 정보 출력하기 (0) | 2024.11.26 |
댓글