문제 사이트
https://school.programmers.co.kr/learn/courses/30/lessons/151136
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
문제
CAR_RENTAL_COMPANY_CAR 테이블에서 자동차 종류가 'SUV'인 자동차들의 평균 일일 대여 요금을 출력하는 SQL문을 작성해주세요. 이때 평균 일일 대여 요금은 소수 첫 번째 자리에서 반올림하고, 컬럼명은 AVERAGE_FEE로 지정해주세요.
CAR_RENTAL_COMPANY_CAR 테이블은 다음과 같으며, CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONS는 각각 자동차 ID, 자동차 종류, 일일 대여 요금(원), 자동차 옵션 리스트를 나타냅니다.
풀이
1. 자동차 종류가 'SUV'인 데이터 필터링
WHERE 절을 이용하여 자동차 종류가 'SUV'인 자동차만 필터링합니다.
WHERE CAR_TYPE = 'SUV'
2. 평균 일일 대여 요금 계산 및 반올림하기
평균을 계산할 때는 AVG() 함수를 사용하며, ROUND() 함수로 소수 첫 번째 자리에서 반올림합니다.
ROUND(AVG(DAILY_FEE), 0) AS AVERAGE_FEE
- AVG(컬럼명): 해당 컬럼의 평균을 계산합니다.
- ROUND(값, 자릿수): 주어진 숫자를 지정된 자리에서 반올림합니다.
최종 SQL 코드
SELECT
ROUND(AVG(DAILY_FEE), 0) AS AVERAGE_FEE
FROM CAR_RENTAL_COMPANY_CAR
WHERE CAR_TYPE = 'SUV';
출력 결과 예시
다른 사람 풀이
다른 개발자 분은 다음과 같은 방식으로 문제를 풀이했으며
반올림 함수인 ROUND()는 두 번째 인자를 생략하면
기본값으로 소수 첫째 자리에서 반올림하여 정수로 처리한다는 것을 알게 되었습니다.
앞으로 평균값 등을 반올림할 때는 별도의 자릿수 지정 없이 다음과 같이 사용하겠습니다.
SELECT
ROUND(AVG(DAILY_FEE)) AS AVERAGE_FEE
FROM CAR_RENTAL_COMPANY_CAR
WHERE CAR_TYPE = "SUV";
'프로그램및 언어 > SQL' 카테고리의 다른 글
[SQL 코테] 조건에 맞는 도서 리스트 출력하기 (0) | 2025.03.31 |
---|---|
[SQL 코테] 12세 이하인 여자 환자 목록 출력하기 (0) | 2025.03.30 |
[SQL 코테] 과일로 만든 아이스크림 고르기 (0) | 2025.03.26 |
[SQL 코테] 흉부외과 또는 일반외과 의사 목록 출력하기 (0) | 2025.03.25 |
SQL로 1부터 100까지 합계 구하기 (0) | 2023.08.30 |