ORACLE数据类型之FLOAT
NUMBER(precision, scale)类型
NUMBER类型是⼀种变长的数据类型,占0~22字节存储空间(1个字节存储数据长度,1个字节存储符号和指数,20个字节存储数据)。
precision是NUMBER可存储的最⼤有效位数,scale是⼩数点右边的最⼤数字长度。
precision范围:1-38,默认38。
oracle decimal类型scale范围:-84~127。
scale>0 精确到⼩数点右边s位,四舍五⼊。然后检验有效位是否<=p。
scale<0 精确到⼩数点左边s位,四舍五⼊。然后检验有效位是否<=p + |s|。
scale=0 表⽰整数。
优点:较好的数据精确度、通⽤性强、可移植性强。
缺点:运算效率相对浮点类型偏低。
FLOAT(binary precision)
FLOAT类型是NUMBER类型的⼦类型,binary precision是⼆进制有效位数,scale不可⾃定义。
其中,binary precision范围是1~126。转⼗进制需要(乘以 0.30103),即1~38。
【⽰例】
float(1)
转⼗进制有效位数:decimal precision = ( 1*0.30103 )=0.30103,永远取上整数,则decimal precision = 1。
若数据为23.8,插⼊数据库变为20。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。