이번엔 TRUNC 와 ROUND 함수에 대해 알아 볼 것이다.
TRUNC와 ROUND 함수는 소수점 처리에서 사용된다.
round(인자, 2)하면 소수점 이하 3의 자리에서 반올림 해서 최종적으로 소수점 둘째자리까지 보이고
trunc(인자, 2)하면 소수점 둘째 자리에서 무조건 절삭한다. 최종적으로 소수점 둘째자리까지 보인다.
=>주의 할 것은 -1, -2식으로 바뀌면 정수 부분이 절삭되거나 반올림 된다.
ex)
round(3456, -2) =>3500 // 반올림 개념
trunc(3456, -2) => 3400 // 절삭의 개념
대체로 이 두 함수는 avg()함수와 자주 쓰인다.
예제를 보자면
employees의 평균 급여를 소수점 2자리까지만 자르고 보여라 라고 한다면
select trunc(avg(salary),2) from employees
where salary >= 12000;
이렇게 써서

이런결과가 나오게 할수 있다.
이걸 라운드 함수를 쓴다면!
select ROUND(avg(salary),2) from employees
where salary >= 12000;
이렇게 써서 결과는

같은 결과가 나온다 왜냐면 ROUND는 반올림 개념인데
소수점 3째 자리 까지 본다면

4이기 때문에 반올림이 되지 않기 때문이다.
'DB > SQLPLUS' 카테고리의 다른 글
| [ORACLE] DUAL 테이블, 임의로 이름 항목이름 정해주기 (0) | 2022.06.12 |
|---|---|
| [ORACLE] Count () 함수 (0) | 2022.06.12 |
| [ORACLE] sqlplus 연산자, Esecape 문자 (0) | 2022.06.12 |
| [ORACLE] group by 구문, having ~절 (0) | 2022.06.12 |
| [oracle] Order by 구문 (0) | 2022.06.12 |
댓글