MOD 함수

설명

MOD 함수는 첫 번째 인자 m을 두 번째 인자 n으로 나눈 나머지 값을 정수로 반환하며, 만약 n이 0이면, 나누기 연산을 수행하지 않고 m 값을 그대로 반환한다.

주의할 점은 피제수, 즉 MOD 함수의 인자 m이 음수인 경우, 전형적인 연산(classical modulus) 방식과 다르게 동작한다는 점이다. 아래의 표를 참고한다.

MOD 함수의 결과

m

n

MOD(m, n)

Classical Modulus
m-n*FLOOR(m/n)

11

4

3

3

11

-4

3

-1

-11

4

-3

1

-11

-4

-3

-3

11

0

11

0으로 나누기 에러

구문

MOD(m, n)

예제

--it returns the reminder of m divided by n

SELECT MOD(11, 4), MOD(11, -4), MOD(-11, 4), MOD(-11, -4), MOD(11,0);

    mod(11, 4)   mod(11, -4)   mod(-11, 4)   mod(-11, -4)   mod(11, 0)

=====================================================================

            3             3            -3             -3           11

 

SELECT MOD(11.0, 4), MOD(11.000, 4), MOD(11, 4.0), MOD(11, 4.000);

  mod(11.0, 4)          mod(11.000, 4)        mod(11, 4.0)          mod(11, 4.000)

=========================================================================

  3.0                   3.000                 3.0                   3.000