Sql的decimal、float、double类型的区别
类别:数据库 浏览量:83273
时间:2013-11-17 Sql的decimal、float、double类型的区别
Sql的decimal、float、double类型的区别
三者的区别介绍
float:浮点型,含字节数为4,32bit,数值范围为-3.4E38~3.4E38(7个有效位)
double:双精度实型,含字节数为8,64bit数值范围-1.7E308~1.7E308(15个有效位)
decimal:数字型,128bit,不存在精度损失,常用于银行帐目计算。(28个有效位)
按存储的范围进行排序
float(real)
double
decimal(numeric)
decimal的详细介绍
decimal(a,b)
参数说明
a指定指定小数点左边和右边可以存储的十进制数字的最大个数,最大精度38。
b指定小数点右边可以存储的十进制数字的最大个数。小数位数必须是从 0 到 a之间的值。默认小数位数是 0。
备注
DECIMAL数据类型用于要求非常高的精确度的计算中,这些类型允许指定数值的精确度和计数方法作为选择参数。精确度在这里是指为这个值保存的有效数字的总个数,而计数方法表示小数点后数字的个数。例如,语句DECIMAL (5,2)规定了存储的值将不会超过5位数字,开且小数点后面有2位数字。
实例
float f = 345.98756f;--结果显示为345.9876,只显示7个有效位,对最后一位数四舍五入。
double d=345.975423578631442d;--结果显示为345.975423578631,只显示15个有效位,对最后一位四舍五入。
--注:float和double的相乘操作,数字溢出不会报错,会有精度的损失。
decimal dd=345.545454879.....--可以支持28位,对最后一位四舍五入。
--:当对decimal类型进行操作时,数值会因溢出而报错。
总结
数值存储范围越小的精度越高,存储数值范围越大,精度就越不准确,如果存储正常金额的情况下,使用money,好处在于可以存储不指定的小数点位数的数值,比较真实。如果对于既要求精度,又固定小数点位数的数值存储,采用decimal(numeric),优点在于可以自定义小数点位数,精度高。如特殊情况,如数值范围巨大只能用float(real)类型了,此类型一般不提倡使用。
您可能感兴趣
- sqlserver表导入数据(在SQLserver数据库之间进行传表和传数据的图文教程)
- 如何正常查看mysql存储数据文件(Mysql文件存储图文详解)
- mysql主机双向复制配置(浅析MySQL并行复制)
- mysql分区表的优缺点(MySQL数据表分区策略及优缺点分析)
- mysql记录binlog的方式(MySQL使用binlog日志做数据恢复的实现)
- mysqlbinlog优缺点(MySQL Binlog 日志处理工具对比分析)
- 如何找到mysqlroot密码(WDCP管理面板忘记MYSQL ROOT密码及重置后台登录密码的方法汇总)
- SQL Server中查询CPU占用高的SQL语句
- 如何在cmd里开启mysql(Windows下通过cmd进入DOS窗口访问MySQL数据库)
- SQL Server与Oracle数据类型的对应关系
- laravel提交数据时间(laravel实现查询最后执行的一条sql语句的方法)
- mysql如何修改列的默认值(mysql查询的时候给字段赋默认值操作)
- 查看mysql索引缓存(MySQL查询缓存的小知识)
- navicat载入sql文件(Navicat Premium如何导入SQL文件的方法步骤)
- sqlserver2016安装教程(SQL server 2016 安装步骤图文教程)
- mysql存储引擎的创建与修改(关于MySQL Memory存储引擎的相关知识)
- 哪里可以看熊猫(成都哪里可以看熊猫)
- oppo手机的三种录屏方法,你知道有哪些吗(oppo手机的三种录屏方法)
- 吉林神秘传染链跨省 传染源尚未找到,舒兰 封城(吉林神秘传染链跨省)
- 吉林舒兰 封城 聚集性疫情传播链已延至沈阳,有一个细节让人忧心(吉林舒兰封城)
- 1天密接者猛增77人,患者轨迹透露危险信号 吉林市全面封闭管理(1天密接者猛增77人)
- 吉林舒兰 封城 15人确诊 276人隔离,出现跨省传播(吉林舒兰封城)
热门推荐
- 有哪些优秀的web服务器(几款比较好的WEB服务器软件推荐)
- springboot vue 异地登录(vue+springboot实现登录验证码)
- nginx代理转发域名(Nginx域名转发使用场景代码实例)
- Extjs中FieldSet的收缩和展开
- dedecms更新后设置空白(织梦DedeCms上传的图片点击打开改为不新窗口打开)
- jquery左右选择框
- 手动设置linuxdns服务器(云服务器Linux系统配置DNS方法)
- BT宝塔Linux服务器管理助手架设VPS面板(安装及初始设置应用)(BT宝塔Linux服务器管理助手架设VPS面板安装及初始设置应用)
- php面向对象怎么调用属性(PHP面向对象程序设计__tostring和__invoke用法分析)
- 云服务器操作系统怎么选(云服务器选择Linux还是windows操作系统比较好?)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9