目录

一:一般Java程序中

二:DB2中的单双精度

(1)定义

(2)精确性

(3)性能优势


一:一般Java程序中

Double 与 Float 的区别:
  01.在内存中占有的字节数不同

    单精度浮点数在机内存占4个字节

    双精度浮点数在机内存占8个字节

  02.有效数字位数不同

    单精度浮点数有效数字8位

    双精度浮点数有效数字16位

  03.数值取值范围

    单精度浮点数的表示范围:-3.40E+38~3.40E+38

    双精度浮点数的表示范围:-1.79E+308~-1.79E+308

  04.在程序中处理速度不同

    一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数快

二:DB2中的单双精度

(1)定义

REAL:单精度浮点 32位  近似值 可以是零,或者可以从-3.4028234663852886e + 38到-1.1754943508222875e-38或者从1.1754943508222875e-38到3.4028234663852886e + 38。

DOUBLE或FLOAT:双精度浮点 64位  近似值。该数字可以是零,或者可以从-1.7976931348623158e + 308到-2.2250738585072014e-308,或者从 2.2250738585072014e-308到1.7976931348623158e + 308。

(2)精确性

REAL 和 DOUBLE,只是通过二进制近似方式来处理十进制数据。
因为二进制只能表示2的n次方的数,n可以取负值,3.3无法用2的n次方的数组合计算出来,所以无法精确表示:3.3=1*2+1*1+0*1/2+1*1/4+0*1/8+0*1/16+1*1/32+...

DECFLOAT 它是一种十进制浮点数据类型,适合处理精确的十进制业务数据
浮点数据类型例如 REAL 和 DOUBLE 类型都只是通过二进制近似方式来处理十进制数据
DECFLOAT可选DECFLOAT(16)和DECFLOAT(34),其意义为:DECFLOAT(34)可存储整数位和小数位的长度之和和为34的小数,超长则从小数位截断,对于整数也是可存34位的纯整数,超长则截断34位之后的补零并转换为幂值:

(3)性能优势

FLOAT 类型更具性能优势,数据体积更小
特性:DECIMAL会对存储的数据自动补0,补多少取决于定义时的大小

例子:
1.1760913  (float,double)
1.1760913000000000 (DECIMAL(30,16))

在亿级别的数据流转中,多余的 0  会极大的影响数据传输,
增多不必要的 “0” 的读写操作

DECIMAL 与 FLOAT 比较相关推荐

  1. decimal,float和double的区别

    一直很奇怪C#的预定义数据类型中为什么加了一个decimal,有float和double不就够了吗?今天来挖一挖. 浮点型 Name CTS Type De script ion Significan ...

  2. python报错TypeError: unsupported operand type(s) for -: ‘decimal.Decimal‘ and ‘float‘的解决方法

    问题描述 在编写python代码时,进行小数位相减时出现 TypeError: unsupported operand type(s) for -: 'decimal.Decimal' and 'fl ...

  3. decimal,float和double的区别是什么?

    https://zhuanlan.zhihu.com/p/352503879 今天复习mysql理论知识,在看常用数据类型的时候发现float和decimal类型都是表示小数,就展开搜索学习了一下区别 ...

  4. C#中对于float,double,decimal的误解

    C#中对于float,double,decimal的误解 原文:C#中对于float,double,decimal的误解 一直很奇怪C#的预定义数据类型中为什么加了一个decimal,有float和d ...

  5. java sql 写入 float_SQL Server的小数数值类型(float 和 decimal)用法

    在SQL Server中,实际上小数数值只有两种数据类型:float 和 decimal,分别是近似数值和精确数值.其他小数类型,都可以使用float和decimal来替代,例如,双精度(double ...

  6. [转载] python-TypeError: Object of type ‘Decimal‘ is not JSON serializable 报错

    参考链接: Python-Json 4: 如何使Json数据格式更易读 class DecimalEncoder(json.JSONEncoder): def default(self, o): if ...

  7. python3从零学习-5.3.3、十进制定点和浮点运算decimal

    源码: Lib/decimal.py decimal 模块为快速正确舍入的十进制浮点运算提供支持. 它提供了 float 数据类型以外的几个优点: Decimal 类型的"设计是基于考虑人类 ...

  8. 一木.溪桥学Python-04: Python基础数据类型int ,float ,bool ,complex,None,str, 转义字符

    一木.溪桥 在Logic Education跟Amy学Python 12期:Python基础课 一木.溪桥学Python-04: Python基础数据类型int ,float ,bool ,compl ...

  9. Python—数据类型之decimal类型

    十进制类型 要创建Decimals,必须先导入decimal模块 decimal的精度可以由我们自己指定 函数 decimal.Decimal(x) #x可以是一个整数或字符串,但不能是浮点数 > ...

最新文章

  1. 冠军方案分享:ICPR 2020大规模商品图像识别挑战赛冠军解读
  2. SharePoint 2013 APP 开发示例 (三)使用远程的web资源
  3. SAP UI5 fullScreenPageRoutes in Component.js
  4. matlab mex路径,使用matlab进行mex编译时的路径问题mexopts
  5. 渗透测试流程(单台服务器)
  6. 13建造者模式(Builder)
  7. php创建windos用户,window_Win7系统创建及开启隐藏账户图文教程,  在电脑操作中有时候因为 - phpStudy...
  8. centos7.4安装mysql5.7_centos7.4三种方式安装mysql5.7
  9. ie6,ie7,ie8 css bug兼容解决记录
  10. Hibernate学习汇总
  11. android随机数方法,Android生成随机数的方法实例
  12. 谁说 Java 不能用来跑 Serverless?
  13. java课设 五子棋_Java课程设计 ————五子棋 (个人博客)
  14. html中input描述,input的type值类型和描述-HTML
  15. LayuI固定块关闭
  16. 如何做软件需求分析(个人工作经验总结)
  17. 宋宝华:当Linux内核遭遇鲨鱼—kernelshark
  18. 美元与人民币汇率 Python
  19. 一些关于KIRIKIRI及2等等等等的研究资料- -
  20. 新型网络病毒“风暴”防护解决方案

热门文章

  1. IDEA 社区版插件(个人)
  2. 从橘子洲智能洁净景区项目看无人驾驶的现实与困境
  3. CSS同时设置绝对定位top和bottom属性
  4. java多人聊天室的实验任务_Java基于中介者模式实现多人聊天室功能示例
  5. 无人机适航解决方案-ADS-B、飞控、C2数据链
  6. C语言函数(Function)
  7. 三国战棋(曹操传mod刘备传、三国志孔明传、续三国英杰传)
  8. idea vue 热_vue如何实现热更新
  9. 真三维立体显示技术分类、特点及展望
  10. latex 调整作者间距