Number类型是由oracle软件支持的类型,

binary_float binary_double, 允许由在硬盘上(CPU,芯片)上执行运行。

binary_float是一种IEEE固有的单精度浮点数。可存储6位精度

binary_double是一种IEEE固有的双精度浮点数。可存储12位精度

备注,在oracle 10g之前是没有这两种类型的。

一般在科学计算中执行实数处理,依赖于硬件的算术运算速度,使用binary_float/binary_double。

如果希望用来存储金融数值,则用number 较佳。

演示

SQL>create table test_float_double(col_number number, col_float binary_float, col_double binary_double);

SQL>insert into test_float_double

values(9876543210.0123456789,9876543210.0123456789,9876543210.0123456789);

sql>select to_char(col_number), to_char(col_float), to_char(col_double)

from test_float_double
描述

如上图,Binary_float和binary_double无法用于对精度要求高的数据。

显示他们存储结构

binary_float,占用4个字节。固定字节存储

binary_double,占用8个字节。固定字节存储

最后修改:2023 年 12 月 11 日
如果觉得我的文章对你有用,请随意赞赏