点击蓝色字关注“SQL数据库运维”,回复“SQL”获取2TB学习资源!
Oracle FLOAT数据类型介绍
Oracle FLOAT数据类型是NUMBER数据类型的子类型。其主要目的是促进与ANSI SQL FLOAT数据类型的兼容。以下显示FLOAT数据类型的语法:
FLOAT(p)NUMBER
我们只能指定FLOAT数据类型的精度。不能指定尺度,因为Oracle数据库从数据中解析尺度的。FLOAT的最大精度是126。
在FLOAT中,精度是二进制位,而在NUMBER中精度是十进制数。可以使用以下公式在二进制和十进制精度之间进行转换:
P(d) = 0.30103 * P(b)
根据这个公式,因二进制精度的最大126位数,大致等于十进制数位数的38位数。
为了使它与SQL ANSI FLOAT兼容,Oracle提供了一些别名,如下表所示:

例如,不使用FLOAT(63)
数据类型,可以使用REAL
别名代替。
Oracle FLOAT示例
首先,为了方便演示,这里创建一个名为float_demo的新表:
CREATE TABLE float_demo (f1 FLOAT(1),f2 FLOAT(4),f3 FLOAT(7));
其次,向float_demo 表中插入一个新行:
INSERTINTOfloat_demo(f1,f2,f3)VALUES(1 3,1 3,1 / 3);1(1 * 0.30103),2(4 * 0.30103)和3(7 * 0.30103)。
第三,从float_demo表中查询数据:
SELECT * FROM float_demo;

在这个例子中,列f1,f2和f3的数据类型是FLOAT(1),FLOAT(4)和FLOAT(7)。因此,列1,f2和f3的相应精度为1(1 * 0.30103),2(4 * 0.30103)和3(7 * 0.30103)。

点击关注“SQL数据库运维”,后台或浏览至公众号文章底部点击“发消息”回复关键字:进群,带你进入高手如云的技术交流群。后台回复关键字:SQL,获取学习资料。
动动小手点击加关注呦☟☟☟
文章转载自SQL数据库运维,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




