Sql中decimal、float、double类型的区别与用法

 

三者的区别介绍

float:浮点型,含字节数为4,32bit,数值范围为-3.4E38~3.4E38(7个有效位)

double:双精度实型,含字节数为8,64bit数值范围-1.7E308~1.7E308(15个有效位)

decimal:数字型,128bit,不存在精度损失,常用于银行帐目计算。(28个有效位)

 

 

decimal的详细介绍

 

定义

 

decimal(a,b)


 

参数说明

a指定指定小数点左边和右边可以存储的十进制数字的最大个数,最大精度38。
b指定小数点右边可以存储的十进制数字的最大个数。小数位数必须是从 0 到 a之间的值。默认小数位数是 0。

 

 

实例

 

float f = 345.98756f;--结果显示为345.9876,只显示7个有效位,对最后一位数四舍五入。

double d=345.975423578631442d;--结果显示为345.975423578631,只显示15个有效位,对最后一位四舍五入。

--注:float和double的相乘操作,数字溢出不会报错,会有精度的损失。

decimal dd=345.545454879..--可以支持28位,对最后一位四舍五入。

--:当对decimal类型进行操作时,数值会因溢出而报错。


 

 

文章转载自:     Sql的decimal、float、double类型的区别      http://www.studyofnet.com/news/214.html

 

你可能感兴趣的:(sql)