본문 바로가기
DB/SQLPLUS

[ORACLE] TRUNC, ROUND 함수

by KhyeonS 2022. 6. 12.

이번엔 TRUNC 와 ROUND 함수에 대해 알아 볼 것이다.


TRUNCROUND 함수는 소수점 처리에서 사용된다.  
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이기 때문에 반올림이 되지 않기 때문이다.

댓글