본문 바로가기

[오라클 레퍼런스 함수] ROUND (number) - 숫자 반올림

by ㅇㅍㅍ 2023. 8. 16.
[오라클 레퍼런스 함수] ROUND (number) - 숫자 반올림
728x90

 

 

 

ROUND (number)

 

구문

ROUND(n [, integer ])

 

목적

ROUND 함수는 소수점 오른쪽에 integer 자릿수까지 n을 반올림합니다. integer를 생략하면 n은 소수점 오른쪽으로부터 0 자릿수까지 반올림됩니다. integer가 음수이면 n은 소수점 왼쪽으로 반올림됩니다.

n은 어떤 숫자 데이터 유형이든 또는 숫자 데이터 유형으로 암시적으로 변환될 수 있는 비숫자 데이터 유형일 수 있습니다. integer를 생략하면 함수는 n의 숫자 데이터 유형과 동일한 데이터 유형에서 ROUND(n, 0) 값을 반환합니다. integer를 포함하면 함수는 NUMBER를 반환합니다.

ROUND는 다음 규칙을 사용하여 구현됩니다.

 

  • n이 0이면, ROUNDinteger에 관계없이 항상 0을 반환합니다.
  • n이 음수이면, ROUND(n, integer)는 -ROUND(-n, integer)을 반환합니다.
  • n이 양수이면,
    ROUND(n, integer) = FLOOR(n * POWER(10, integer) + 0.5) * POWER(10, -integer)

NUMBER 값에 적용되는 ROUND는 같은 값이 부동 소수점으로 표현된 경우에 부동 소수점으로 표현된 값에 적용되는 ROUND와 약간 다른 결과를 줄 수 있습니다. 다른 결과는 NUMBER와 부동 소수점 값의 내부 표현의 차이에서 비롯됩니다. 차이가 발생하는 경우 반올림된 숫자에서 반올림된 자릿수의 차이는 1일 것입니다.

 

참고:

  • 암묵적 변환에 대한 자세한 내용은 표 2-8을 참조하십시오.
  • Oracle Database가 BINARY_FLOATBINARY_DOUBLE 값 처리 방법에 대한 자세한 내용은 "Floating-Point Numbers"를 참조하세요.
  • 관련 작업을 수행하는 함수에 대한 정보는 FLOORCEIL, TRUNC (number) 및 MOD를 참조하세요.

 

예제

다음 예제는 숫자를 소수점 첫 번째 자리에서 반올림합니다.

SELECT ROUND(15.193,1) "Round" FROM DUAL;

     Round
----------
      15.2

 

다음 예제는 숫자를 소수점 왼쪽 첫 번째 자리에서 반올림합니다.

SELECT ROUND(15.193,-1) "Round" FROM DUAL;

     Round
----------
        20

 


출처: 오라클 레퍼런스

원문 링크: Oracle ROUND (number) 함수 문서

 

반응형

댓글