티스토리 뷰
반응형
🚩 문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
자동차 대여 회사의 대여 중인 자동차 정보를 담은 테이블 기반으로 한다.

- CAR_ID: 자동차 ID
- CAR_TYPE: 자동차 종류(세단, SUV, 승용차, 트럭, 리무진)
- DAILY_FEE: 일일 대여 요금(원)
- OPTIONS: 자동차 옵션 리스트 (열선시트, 스마트키, 주차감지센서 등)
요구 사항
- CAR_TYPE이 'SUV'인 자동차들의 평균 일일 대여 요금을 구해야 한다.
이 값을 'AVERAGER_FEE'라는 값으로 출력해야 한다. - 평일 일일 대여 요금은 소수 첫 번째 자리에서 반올림한다.
🔎문제 분석 요약
- CAR_TYPE이 'SUV'인 자동차들을 필터링한다.
- 이 자동차들의 'DALY_FEE'값을 기준으로 평균을 계산한다.
- 계산된 평귤을 소수 첫 번째 자리에서 반올림한다.
🗝️알고리즘 설계
- WHERE 절을 사용해 CAR_TYPE이 'SUV"인 데이터만 필터링한다.
- AVG 함수를 사용해 DAILY_FEE의 평균을 구한다.
- ROUND 함수를 사용해 소수 첫 번째 자리에서 반올림한다.
- AS 키워드를 사용해 결과 컬럼의 이름을 AVERAGE_FEE로 지정한다.
💡틀린 부분 (1차 시도)
SELECT AVG(ROUND(DAILY_FEE,1)) AS AVERAGE_FEE
FROM CAR_RENTAL_COMPANY_CAR;
//출력
AVERAGE_FEE
127366.6667
분석:
- ROUND(DAILY_FEE, 1)을 사용해 각 개별 요금을 소수 첫 번째 자리에서 반올림한 후 평균을 구하는 방식은 의도와 달랐다.
의도: 소수점을 버리고, 반올림된 값이 아닌 원래의 요금을 기반으로 평균을 구한 뒤, 그 평균값을 반올림해야 했다. - 소수점 뒷자리를 없애기 위해서는 ROUND 함수를 AVG 함수의 결과에 적용해야 한다.
➡️ ROUND(AVG(칼럼명), 반올림할 자릿수)
➡️ 반올림할 자릿수는 소수 몇 자리까지 남기는지를 결정하는 것이다. 예를 들어, 0을 넣으면 소수점 아래를 모두 버리고 정수로 반올림된다.
💻 소스 코드 (2차 시도, 정답 코드)
SELECT ROUND(AVG(DAILY_FEE),0) AS AVERAGE_FEE
FROM CAR_RENTAL_COMPANY_CAR
WHERE CAR_TYPE = 'SUV';
분석:
- CAR_TYPE이 'SUV'인 경우만 필터링한 후, 그 평균을 구하고, ROUND 함수로 소수 첫 번째 자리에서 반올림하여 정수로 반환한다.
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
| [MySQL] 어린 동물 찾기 (Lv.1 SELECT) (0) | 2025.09.29 |
|---|---|
| [MySQL] 강원도에 위치한 생산공장 목록 출력하기 (Lv.1 SELECT) (4) | 2025.08.29 |
| [JAVA] 숫자 비교하기(Lv.0) (2) | 2025.02.28 |
| [JAVA] 두 수의 나눗셈 (Lv.0) (2) | 2024.12.19 |
| [JAVA] 문자열 반복해서 출력하기 (Lv.0) (2) | 2024.04.03 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 자바의 정석
- 기본 생성자
- 조건문 if
- 기본형/참조형 매개변수
- SQL
- 호출스택
- 객체지향
- 객체 배열
- 2차배열 예제
- MySQL
- 객체지향 언어
- java의 정석기초
- 생활코딩
- Lv.0
- java의정석 기초
- 클래스와 객체
- 매개변수가 있는 생성자
- JAVA의 정석
- 두 수의 나눗셈
- return문
- JAVA 의 정석
- 코테
- string 배열
- do-while문
- Java
- 객체의 구성요소
- 프로그래머스
- 인스턴스 메서드
- continue문
- 메서드 간의 호출과 참조
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
글 보관함