MOD

構文

目的

MODn2n1で割った余りを戻します。n1が0の場合は、n2を戻します。

このファンクションは、引数として、任意の数値データ型、または暗黙的に数値データ型に変換可能な数値以外のデータ型を取ります。Oracleは、数値の優先順位が最も高い引数を判断し、残りの引数をそのデータ型に暗黙的に変換して、そのデータ型を戻します。

関連項目:

暗黙的な変換の詳細は、表2-8を参照してください。数値の優先順位の詳細は、「数値の優先順位の詳細」を参照してください。

次の例では、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) 古典数学のモジュール・ファンクション

11

4

3

3

11

-4

3

-1

-11

4

-3

1

-11

-4

-3

-3

関連項目:

「FLOOR」および「REMAINDER」を参照してください。REMAINDERはMODと似ていますが、FLOORではなくROUNDを式に使用します。