🙂 확인 사항
1. CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블
2. 평균 대여 기간이 7일 이상
3. 자동차 ID, 평균 대여기간
4. 평균 대여 기간 컬럼명: AVERAGE_DURATION
5. 평균 대여 기간: 소수점 두번째 자리에서 반올림
6. 평균 대여 기간 내림차순, 자동차 ID 내림차순 정렬
📝 Language: Oracle
1
2
3
4
5
6
7
8
9
|
SELECT CAR_ID,
ROUND(AVG((END_DATE-START_DATE+1)),1) AVERAGE_DURATION
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
GROUP BY CAR_ID
HAVING ROUND(AVG((END_DATE-START_DATE+1)),1)>=7
ORDER BY ROUND(AVG((END_DATE-START_DATE+1)),1) DESC,
CAR_ID DESC
;
|
GROUPG BY + HAVING
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
WITH AVGTABLE AS(
SELECT CAR_ID,
ROUND(AVG((END_DATE-START_DATE+1)),1) AVERAGE_DURATION
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
GROUP BY CAR_ID
)
SELECT CAR_ID,
AVERAGE_DURATION
FROM AVGTABLE
WHERE AVERAGE_DURATION>=7
ORDER BY AVERAGE_DURATION DESC,
CAR_ID DESC
;
|
공통 표현식
1
2
3
4
5
6
7
8
9
10
11
12
13
|
SELECT CAR_ID,
AVERAGE_DURATION
FROM (
SELECT CAR_ID,
ROUND(AVG(END_DATE - START_DATE + 1), 1) AS AVERAGE_DURATION
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
GROUP BY CAR_ID
)
WHERE AVERAGE_DURATION >= 7
ORDER BY AVERAGE_DURATION DESC,
CAR_ID DESC
;
|
인라인 뷰
🔗 소스 코드
GitHub
'Computer > Algorithm_SQL' 카테고리의 다른 글
[Algorithm_SQL] 오랜 기간 보호한 동물(2) (Success) (0) | 2023.10.18 |
---|---|
[Algorithm_SQL] 조건에 부합하는 중고거래 상태 조회하기 (Success) (0) | 2023.10.17 |
[Algorithm_SQL] 오랜 기간 보호한 동물(1) (Success) (0) | 2023.10.15 |
[Algorithm_SQL] 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 (Success) (0) | 2023.10.14 |
[Algorithm_SQL] 있었는데요 없었습니다 (Success) (0) | 2023.10.13 |