728x90
MOD
구문
MOD(n2, n1)
목적
MOD는 n1로 나눈 나머지를 반환합니다. n1이 0이면 n2를 반환합니다.
이 함수는 숫자 데이터 타입 또는 숫자 데이터 타입으로 암묵적으로 변환될 수 있는 비숫자 데이터 타입을 인수로 사용할 수 있습니다. Oracle은 가장 높은 숫자 우선순위를 갖는 인수를 결정하고, 나머지 인수를 해당 데이터 타입으로 암묵적으로 변환한 후 해당 데이터 타입을 반환합니다.
참고:
- 암묵적 변환에 대한 자세한 내용은 표 2-8을 참조하고, 숫자 우선순위에 관한 정보는 "Numeric Precedence"를 참조하세요.
- Oracle Database Globalization Support Guide의 부록 C는 INSTR 함수가 substring 인수를 string의 부분 문자열과 비교하는 데 사용하는 정렬(collation) 결정 규칙에 대한 정보를 제공합니다.
예제
다음 예제는 11을 4로 나눈 나머지를 반환합니다:
SELECT MOD(11,4) "Modulus"
FROM DUAL;
Modulus
----------
3
이 함수는 n1과 n2의 곱이 음수인 경우에는 전통적인 수학적 모듈러스 함수와 다르게 동작합니다. 전통적인 모듈러스는 다음과 같은 공식으로 MOD 함수를 사용하여 표현할 수 있습니다:
n2 - n1 * FLOOR(n2/n1)
다음 표는 MOD 함수와 전통적인 모듈러스(classical modulus) 간의 차이점을 보여줍니다:
n2 | n1 | MOD(n2,n1) | Classical Modulus |
11 | 4 | 3 | 3 |
11 | -4 | 3 | -1 |
-11 | 4 | -3 | 1 |
-11 | -4 | -3 | -3 |
참고:
FLOOR 및 REMAINDER, MOD와 유사하지만 식에서 FLOOR 대신에 ROUND를 사용합니다.
출처: 오라클 레퍼런스
원문 링크: Oracle MOD 함수 문서
반응형
'코딩 > 오라클 함수' 카테고리의 다른 글
[오라클 레퍼런스 함수] NANVL - NaN(숫자가 아님) 처리 함수 (0) | 2023.08.10 |
---|---|
[오라클 레퍼런스 함수] MONTHS_BETWEEN - 두 날짜 사이의 개월 수 반환 (0) | 2023.08.10 |
[오라클 레퍼런스 함수] MIN - 최소값 반환 (0) | 2023.08.10 |
[오라클 레퍼런스 함수] MEDIAN - 숫자나 날짜 시간의 중간 값 반환 (0) | 2023.08.09 |
[오라클 레퍼런스 함수] MAX - 최대값 반환 (0) | 2023.08.09 |
댓글