Oracle MOD() Function
The Oracle (PL/SQL) MOD() function returns the remainder of x divided by y. This function can be expressed with this formula:
y - x * FLOOR(y/x)
In special cases, the function returns the following:
- If y is 0, then an error is returned.
- If x or y or both are NULL, then NULL is returned.
Note: The MOD() function is similar to REMAINDER() except that it uses FLOOR in its formula, whereas REMAINDER() uses ROUND.
Syntax
MOD(x, y)
Parameters
x |
Required. Specify the value that will be divided by y. |
y |
Required. Specify the value that will be divided into x. |
Return Value
Returns the remainder of x divided by y.
Example 1:
The example below shows the usage of MOD() function.
MOD(12, 3) Result: 0 MOD(14, 3) Result: 2 MOD(13.5, 3.1) Result: 1.1 MOD(13.5, -3.1) Result: 1.1
Example 2:
Consider a database table called Sample with the following records:
Data | x | y |
---|---|---|
Data 1 | 10 | 5 |
Data 2 | 20 | 6 |
Data 3 | 30 | 7 |
Data 4 | 40 | 8 |
Data 5 | 50 | 9 |
To calculate the remainder of division operation, where records of column x is divided by records of column y, the following query can be used:
SELECT Sample.*, MOD(x, y) AS MOD_Value FROM Sample;
This will produce the result as shown below:
Data | x | y | MOD_Value |
---|---|---|---|
Data 1 | 10 | 5 | 0 |
Data 2 | 20 | 6 | 2 |
Data 3 | 30 | 7 | 2 |
Data 4 | 40 | 8 | 0 |
Data 5 | 50 | 9 | 5 |
❮ Oracle Functions