MOD
構文
目的
MOD
はn2
をn1
で割った余りを戻します。n1
が0の場合は、n2
を戻します。
このファンクションは、引数として、任意の数値データ型、または暗黙的に数値データ型に変換可能な数値以外のデータ型を取ります。Oracleは、数値の優先順位が最も高い引数を判断し、残りの引数をそのデータ型に暗黙的に変換して、そのデータ型を戻します。
関連項目:
暗黙的な変換の詳細は、表2-9を参照してください。数値の優先順位の詳細は、「数値の優先順位の詳細」を参照してください
例
次の例では、11を4で割ったときの余りを戻します。
SELECT MOD(11,4) "Modulus" FROM DUAL; Modulus ---------- 3
このファンクションは、n1
およびn2
の積が負の値の場合には古典数学のモジュール・ファンクションとは異なる動作をします。古典数学のモジュール・ファンクションは、次の公式を使用したMOD
ファンクションで表すことができます。
n2 - n1 * FLOOR(n2/n1)
次の表に、MOD
ファンクションと古典数学のモジュール・ファンクションの相違を示します。
n2 | n1 | MOD(n2,n1) | 古典数学のモジュール・ファンクション |
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
関連項目:
「FLOOR (number)」および「REMAINDER」を参照してください。REMAINDERはMOD
と似ていますが、FLOOR
ではなくROUND
を式に使用します。