[ORACLE / 내장함수] 숫자형 함수 모음(MOD, REMAINDERS 차이점) - (2)


이전 포스팅에 이어서 Oracle 기본 내장함수 중 나머지 연산 함수에 대해 다룹니다.

또한, MOD와 REMAINDERS는 비슷해 보이지만 분명한 차이점이 있으니 주의해야합니다.

1. MOD


[문법]
MOD("분자 값", "분모 값")                   

 : "분자 값"을 "분모 값"으로 나눈 나머지

[예시]
SELECT MOD(11, 3) AS COL1
    ,MOD(12, 9) AS COL1
    FROM DUAL;

[결과]




2. REMAINDERS


[문법]
REMAINDERS("분자 값", "분모 값")

: "분자 값"에서 나눈 몫을 반올림한 값을 뺀 나머지

 => "분자 값" -  { ROUND("분자 값" / "분모 값") * "분모 값" }


[예시]
SELECT REMAINDER(10,5) AS COL2 
      ,REMAINDER(11,5) AS COL3  -- 몫 : 2.2  => 2  // 검산 : (2 * 5 + 1 = 11)
      ,REMAINDER(12,5) AS COL4 
      ,REMAINDER(13,5) AS COL5  -- 몫 : 2.6  => 3  // 검산 : (3 * 5 - 2 = 13)
      ,REMAINDER(14,5) AS COL6
      ,REMAINDER(15,5) AS COL7
  FROM DUAL;

[결과]

 "분자 값" -  { ROUND("분자 값" / "분모 값") * "분모 값" }

 COL3 계산 : 11 - (2 * 5) = 1
 COL5 계산 : 13 - (3 * 5) = -2



0 댓글