본문 바로가기

[오라클 레퍼런스 함수] REMAINDER - 나누기 후 나머지 반환

by ㅇㅍㅍ 2023. 8. 16.
[오라클 레퍼런스 함수] REMAINDER - 나누기 후 나머지 반환
728x90

 

REMAINDER

 

구문

REMAINDER(n2, n1)

 

목적

REMAINDER 함수는 n2n1로 나눈 나머지를 반환합니다.

이 함수는 어떤 숫자 데이터 유형이든, 혹은 숫자 데이터 유형으로 암묵적으로 변환될 수 있는 비숫자 데이터 유형을 인자로 받을 수 있습니다. Oracle은 가장 높은 숫자 우선 순위를 가진 인자를 결정하고, 나머지 인자들을 그 데이터 유형으로 암묵적으로 변환한 후 그 데이터 유형을 반환합니다.

MOD 함수는 REMAINDER와 유사하지만 그 식에 FLOOR를 사용하는 반면, REMAINDERROUND를 사용합니다. MOD를 참조하세요.

 

참고:

암묵적 변환에 대한 자세한 내용은 표 2-8을 참조하고, 숫자 우선순위에 관한 정보는 "Numeric Precedence"를 참조하십시오.

 

  • 만약 n1 = 0 이거나 n2 = 무한대(infinity)이라면, Oracle은 다음과 같이 반환합니다:
    º 인자가 NUMBER 데이터 유형일 경우 오류를 반환합니다.
    º 인자가 BINARY_FLOATBINARY_DOUBLE 데이터 유형일 경우 NaN(Not-a-Number)을 반환합니다.

  • 만약 n1 != 0이라면, 나머지는 n2 - (n1*N)으로 계산됩니다. 여기서 Nn2/n1과 가장 가까운 정수입니다. 만약 n2/n1x.5와 같다면, N은 가장 가까운 짝수 정수가 됩니다.

  • 만약 n2가 부동 소수점 숫자이고, 나머지가 0이라면, 나머지의 부호는 n2의 부호와 같습니다. 0인 나머지는 NUMBER 값들에 대해 부호가 없습니다.

 

예제

TO_BINARY_DOUBLE "예제"를 위해 생성한 float_point_demo 테이블을 사용하여 다음 예제는 두 부동 소수점 숫자를 나누고 그 연산의 나머지를 반환합니다:

SELECT bin_float, bin_double, REMAINDER(bin_float, bin_double)
  FROM float_point_demo;

 BIN_FLOAT BIN_DOUBLE REMAINDER(BIN_FLOAT,BIN_DOUBLE)
---------- ---------- -------------------------------
1.235E+003 1.235E+003                      5.859E-005

 


출처: 오라클 레퍼런스

원문 링크: Oracle REMAINDER 함수 문서

 

반응형

댓글