─━ IT ━─

[Oracle] ROUND 반올림 함수 사용법 및 예시

DKel 2021. 2. 19. 08:11
반응형

ROUND 함수 예시

문법

ROUND ( number [ , integer )
ROUND ( float_number )
return [number | binary_float | binary_double]

 

파라미터

number 반올림 처리를 행하는 숫자 식
integer 반올림하는 정도 (소수 자릿수) default 0
float_number BINARY_FLOAT, BINARY_DOUBLE 형

 

리턴

반올림한 숫자

 

조건

SQL 및 PL / SQL 모두에서 사용할 수 있습니다.

 

내용

ROUND (숫자) 함수의 내용

숫자 식 number 를 소수점 integer 정도 (기본값은 0)로 반올림 한 값을 되 돌린다.
반올림 (※)하는 정도 integer 가 음수이면 소수점 왼쪽 자리, 즉 정수부의 지정 자리 이하 반올림 처리의 대상이된다.

(※) 반올림과 반올림을 포함하는 여러 반올림의 총칭이다.

반올림하면 짝수 반올림 (은행 반올림).

가까운 짝수로 라운딩이 일반적으로 같은 것이다. (Oracle 표준 SQL 함수에 해당하는 것이 없다)

주의

부동 소수점 형과 ROUND 함수
숫자 식으로 부동 소수점 데이터 형식 (BINARY_FLOAT, BINARY_DOUBLE 만)을 받아
ROUND ( float_number ) 함수의 경우 숫자로 xxx.5를 입력하면 가까운 짝수 정수로 반올림된다. 

그런데, 얼마를 생략하면 (= 소수 첫째 자리) 한정의 행동 때문에 부동 소수점에서 반올림을하는 경우에는 조심.

이것은 ROUND 함수의 오버로드 가 ROUND ( float_number )만으로 

ROUND ( float_number [ , integer )가 준비되어 있서 float_number 가 NUMBER 형에 암묵적 변환 되는 것에 기인한다.

 

 

예시

ROUND (숫자) 사용 예

SQL> select  num, d, p, ROUND (num, p), ROUND (d), ROUND (d, p)
  2 from round_sample2;
 
  NUMBER 형 BINARY_DOUBLE 형
       NUM D P ROUND (NUM, P)    ROUND (D) ROUND (D, P)
 ---------- --------------- ------- --- ------------ ---------- ----------
 1234.5678 1.2345678E + 03 2 1234.57 1.235E + 003 1234.57
 1234.5678 1.2345678E + 03 1 1234.6 1.235E + 003 1234.6
    1234.5 1.2345000E + 03 0 1235 1.234E + 003 1235
                                                   ^^^^^^^^^^ ^^^^
 1234.5678 1.2345678E + 03 0 1235 1.235E + 003 1235
 1234.5678 1.2345678E + 03 -1 1230 1.235E + 003 1230
                                                   ^^^^^^^^^^ ^^^^
                                                  BINARY_DOUBLE NUMBER 형
반응형