説明
この関数は、倍精度浮動小数点数を返します。
説明
文字列または NUMBER を BINARY_DOUBLE に変換すると、精度が不正確になる可能性があります。これは、NUMBER と文字型が10進法の精度で数値を表現するのに対し、BINARY_DOUBLE は2進法の精度で表現するためです。BINARY_FLOAT から BINARY_DOUBLE への変換は正確です。
構文
TO_BINARY_DOUBLE(expr [, fmt [, 'nlsparam' ] ])
パラメータの説明
パラメータ |
説明 |
|---|---|
| expr | 文字列、または NUMBER、BINARY_FLOAT、BINARY_DOUBLE 型の数値。 |
| fmt | 出力形式パラメータで、オプションです。fmt を省略した場合、n は VARCHAR2 値に変換されます。詳細については、fmt パラメータのリストを参照してください。 |
| nlsparam | 十進数文字、部品区切り文字、現地通貨記号、国際通貨記号を定義します。オプションです。 |
説明
expr が文字列の場合、オプションの fmt と nlsparam パラメータが有効になります。これらの役割は TO_CHAR (number) 関数と同じです。expr が BINARY_DOUBLE の場合、この関数は expr を返します。
戻り値の型
BINARY_DOUBLE 型のデータを返します。
例
文字列 123.123 を倍精度浮動小数点数に変換します。
obclient> SELECT TO_BINARY_DOUBLE('123.123') FROM DUAL;
+-----------------------------+
| TO_BINARY_DOUBLE('123.123') |
+-----------------------------+
| 1.23123E+002 |
+-----------------------------+
1 row in set