REMAINDER
構文
目的
REMAINDER
はn2
をn1
で割った余りを戻します。
このファンクションは、引数として、任意の数値データ型、または暗黙的に数値データ型に変換可能な数値以外のデータ型を取ります。Oracleは、数値の優先順位が最も高い引数を判断し、残りの引数をそのデータ型に暗黙的に変換して、そのデータ型を戻します。
MOD
ファンクションはREMAINDER
と似ていますが、MODの式ではFLOOR
を使用します。これに対してREMAINDER
ではROUND
を使用します。詳細は、「MOD」を参照してください。
関連項目:
暗黙的な変換の詳細は、表2-8を参照してください。数値の優先順位の詳細は、「数値の優先順位の詳細」を参照してください。
-
n1
が0(ゼロ)であるか、またはn2
が無限大の場合、Oracleが返す内容は次のとおりです。-
両方の引数が
NUMBER
型の場合はエラー -
両方の引数が
BINARY_FLOAT
またはBINARY_DOUBLE
の場合はNaN
-
-
n1
が0ではない場合、余りはn2
- (n1
*N
)となります。N
は、n2
/n1
に最も近い整数です。n2
/n1
がx.5
と等しい場合、N
は最も近い偶数の整数です。 -
n2
が浮動小数点数で、余りが0(ゼロ)の場合、余りの符号はn2
の符合になります。NUMBER
値の場合、0の余りには符号は付きません。
例
次の例では、TO_BINARY_DOUBLE
の「例」で作成されたfloat_point_demo
表を使用して、2つの浮動小数点数を割り、算出された余りを戻します。
SELECT bin_float, bin_double, REMAINDER(bin_float, bin_double) FROM float_point_demo; BIN_FLOAT BIN_DOUBLE REMAINDER(BIN_FLOAT,BIN_DOUBLE) ---------- ---------- ------------------------------- 1.235E+003 1.235E+003 5.859E-005