binary_float和binary_double数据类型
Binary_float和binary_double是10g新引入的两种数据类型;
Binary_float:可以存储一个单精度的32位浮点数
Binary_double:可以存储一个双精度的64位浮点数
两者的优点
比较项 | Binary_float | Binary_double | 备注 |
存储空间 | 5字节 | 9字节 | number需要22个字节 |
数字范围 | 能够存储更大或更小的数字 | ||
执行运行速度 | 运行速度更快 | number运算之前需用软件转换,而它们是用硬件执行运算 | |
运行封闭 | 运算封闭 | 即返回结果要么是数字,要么就是一个特殊值 | |
取整透明 | 使用二进制标示数字 | number使用十进制 |
提示:如果你正在开发一个涉及大量数据运算的系统,那么就应该考虑使用这两种数据类型;
特殊值
除了使用数字值外,还可以使用特殊值
1. BINARY_FLOAT_NAN:binary_float的非数字
2. BINARY_FLOAT_INFINITY:bianry_float的无穷大
3. BINARY_DOUBEL_NAN:binary_doubel的非数字
4. BINARY_DOUEBLE_INFINITY:binary_doubel的无穷大
使用举例
insert into table_name (
bin_flaot, bin_double
) valuses(
BINARY_FLOAT_INTINITY, BINARY_DOUBLE_INFINITY
);