본문 바로가기
오라클 게시판/오라클 함수

【오라클(Oracle) SQL 함수】 REMAINDER 함수

by 기서무나구물 2021. 10. 20.

포스팅 목차

    REMAINDER

     


    문법

     

    remainder::=

     


    목적

    REMAINDER함수는 n2를 n1으로 나눈 나머지 값을 반환한다.

    이 함수는 인수로써 임의의 수치형 또는 암묵적으로 수치형으로 변환 가능한 비수치형 데이터형을 취한다. 오라클은 수치의 우선순위가 가장 높은 인수를 판단하여 나머지 인수를 암묵적으로 그 데이터형을 변환하여, 그 데이터형을 반환한다.

    MOD함수는 REMAINDER함수와 유사하나, MOD함수는 식에서 FLOOR을 사용하고, REMAINDER은 ROUND를 사용한다.  MOD함수 참고.

    • 만약 n1=0 또는 n2=무한대, 오라클은 아래를 반환한다.
      • 만약 양쪽 인수가 NUMBER형인 경우 에러를 발생
      • 만약 양쪽 인수가 BINARY_FLOAT 또는 BINARY_DOUBLE 인경우, NaN을 반환.
    • 만약 n1!=0 이라면, 나머지는 n2-(n1*N)가된다. N 은 n2/n1에 가장 가까운 정수.
    • 만약 n2가 부동 소수점이고, 나머지가 0이라면, 나머지의 부호는 n2의 부호가 된다. 0의 나머지는 NUMBER값에 대해 붙이지 않는다.

     


    참고

     


    관련 함수

    함수명 함수내용
    CEIL 인수에서 지정한 수치를 올림 하여 정수를 구하는 함수이다. (절단 함수)
    FLOOR 지정한 숫자보다 작거나 같은 정수 중에서 최댓값을 반환한다. (내림 함수)
    MOD n2을 n1으로 나눈 나머지 값(Remainder)을 반환한다.
    REMAINDER n2를 n1으로 나눈 나머지 값을 반환한다.
    ROUND(number) n값을 소수점 아래 (integer+1) 번 째 위치에서 정수 방향으로 반올림한 값을 반환한다. 
    TRUNC(number) 수치 값 n1을 소수점 자리 중(소수점을 기준으로 양수 방향의 정수부 또는 음수 방향의 소수부)에서 파라미터 n2의 자리 이하를 절삭(버림, Truncation)한다.

     


    예제

    다음 예제는 TO_BINARY_DOUBLE "Examples" 에서 생성된 float_point_demo 테이블을 이용하여서 2개의 부도 소수점을 나눠서, 산출된 나머지를 반환한다.

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

     

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

     


    오라클 SQL 함수(Oracle SQL Function) 목록 리스트 링크

     

    [SQL, Pandas, R Prog, Dplyr, SQLDF, PANDASQL, DATA.TABLE] SQL EMP 예제로 만나는 테이블 데이터 처리 방법 리스트 링크
    반응형

    댓글