Go to main content
285/555

TO_BINARY_DOUBLE

Syntax

[画像:Description of to_binary_double.gif follows]
Description of the illustration ''to_binary_double.gif''

Purpose

TO_BINARY_DOUBLE returns a double-precision floating-point number.

  • expr can be a character string or a numeric value of type NUMBER, BINARY_FLOAT, or BINARY_DOUBLE. If expr is BINARY_DOUBLE, then the function returns expr.

  • The optional 'fmt' and 'nlsparam' arguments are valid only if expr is a character string. They serve the same purpose as for the TO_CHAR (number) function.

    • The case-insensitive string 'INF' is converted to positive infinity.

    • The case-insensitive string '-INF' is converted to negative identity.

    • The case-insensitive string 'NaN' is converted to NaN (not a number).

You cannot use a floating-point number format element (F, f, D, or d) in a character string expr.

Conversions from character strings or NUMBER to BINARY_DOUBLE can be inexact, because the NUMBER and character types use decimal precision to represent the numeric value, and BINARY_DOUBLE uses binary precision.

Conversions from BINARY_FLOAT to BINARY_DOUBLE are exact.

See Also:

TO_CHAR (number) and "Floating-Point Numbers"

Examples

The examples that follow are based on a table with three columns, each with a different numeric data type:

CREATE TABLE float_point_demo
 (dec_num NUMBER(10,2), bin_double BINARY_DOUBLE, bin_float BINARY_FLOAT);
INSERT INTO float_point_demo
 VALUES (1234.56,1234.56,1234.56);
SELECT * FROM float_point_demo;
 DEC_NUM BIN_DOUBLE BIN_FLOAT
---------- ---------- ----------
 1234.56 1.235E+003 1.235E+003

The following example converts a value of data type NUMBER to a value of data type BINARY_DOUBLE:

SELECT dec_num, TO_BINARY_DOUBLE(dec_num)
 FROM float_point_demo;
 DEC_NUM TO_BINARY_DOUBLE(DEC_NUM)
---------- -------------------------
 1234.56 1.235E+003

The following example compares extracted dump information from the dec_num and bin_double columns:

SELECT DUMP(dec_num) "Decimal",
 DUMP(bin_double) "Double"
 FROM float_point_demo;
Decimal Double
--------------------------- ---------------------------------------------
Typ=2 Len=4: 194,13,35,57 Typ=101 Len=8: 192,147,74,61,112,163,215,10

Scripting on this page enhances content navigation, but does not change the content in any way.

AltStyle によって変換されたページ (->オリジナル) /