728x90
반응형
문제링크
https://www.hackerrank.com/challenges/weather-observation-station-13/problem?isFullScreen=true
1. 핵심
- ROUND(컬럼명, 숫자) - 반올림 VS TRUNCATE(컬럼명, 숫자) - 버림
`ROUND()`과 `TRUNCATE()`은 SQL에서 숫자 값을 조작하는 데 사용되는 함수로, 다음과 같이 동작합니다:
1. **ROUND():**
- 구문: `ROUND(컬럼명, 소수 자릿수)`
- 목적: 숫자 값을 지정된 소수 자릿수로 반올림합니다.
- 동작:
- 소수 자릿수가 양수인 경우, 해당 소수 자릿수로 값을 반올림합니다.
- 소수 자릿수가 음수인 경우, 소수점 왼쪽으로 값을 반올림합니다.
- 표준 반올림 규칙을 따릅니다 (예: 다음 숫자가 5 이상이면 반올림합니다).
- 예시: `ROUND(3.14159, 2)`는 `3.14`를 반환합니다.
2. **TRUNCATE():**
- 구문: `TRUNCATE(컬럼명, 소수 자릿수)`
- 목적: 숫자 값을 지정된 소수 자릿수로 절단합니다.
- 동작:
- 지정된 소수 자릿수를 초과하는 숫자를 간단히 삭제하여 결과를 반환합니다.
- `ROUND()`와 달리, `TRUNCATE()`는 반올림을 수행하지 않습니다. 단순히 지정된 소수 자릿수 이후의 숫자를 삭제합니다.
- 예시: `TRUNCATE(3.14159, 2)`는 `3.14`를 반환합니다.
**차이:**
- `ROUND()`는 표준 반올림 규칙에 따라 값을 조정하며, 필요한 경우 마지막 숫자를 변경하여 지정된 소수 자릿수를 얻습니다.
- `TRUNCATE()`는 반올림 없이 지정된 소수 자릿수 이후의 숫자를 단순히 삭제합니다.
예를 들어:
- `ROUND(3.666, 2)`는 반올림하여 `3.67`을 반환합니다.
- `TRUNCATE(3.666, 2)`는 반올림 없이 `3.66`을 반환합니다.
2. 코드(MySQL)
select truncate(sum(LAT_N), 4)
from STATION
where LAT_N > 38.7880 and LAT_N < 137.2345
728x90
반응형
'PS > SQL' 카테고리의 다른 글
[프로그래머스] 대장균들의 자식의 수 구하기 (1) | 2024.05.01 |
---|---|
[프로그래머스] 특정 형질을 가지는 대장균 찾기 (0) | 2024.04.30 |
[HackerRank] Top Earners (0) | 2024.04.24 |
[HackerRank] The Blunder (0) | 2024.04.23 |
[HackerRank] Type of Triangle (0) | 2024.04.10 |