mysql用什么字段类型,可以保存小数
要求精度高就用decimal
审题错了...
简单写下区别:
float:浮点型,含字节数为4,32bit,数值范围为-3.4E38~3.4E38(7个有效位)
double:双精度实型,含字节数为8,64bit数值范围-1.7E308~1.7E308(15个有效位)
decimal:数字型,128bit,不存在精度损失,常用于银行帐目计算。(28个有效位)
numberic === decimal
float f = 345.98756f;//结果显示为345.9876,只显示7个有效位,对最后一位数四舍五入。
double d=345.975423578631442d;//结果显示为345.975423578631,只显示15个有效位,对最后一位四舍五入。
注:float和double的相乘操作,数字溢出不会报错,会有精度的损失。
decimal dd=345.545454879.....//可以支持28位,对最后一位四舍五入。
注:当对decimal类型进行操作时,数值会因溢出而报错。
不支持小数点是什么意思
是指一种数据库格式,不识别小数点。
数据库MySQL不支持小数点,而是使用近似值来表示小数。
因为MySQL使用的是二进制来存储数字,而不是十进制。在实际应用中,需要注意精确计算时可能出现的误差。
decimal是什么类型mysql
decimal是数字数据类型中的一种,属于定点数其标准格式是DECIMAL(M,D),其中M为长度,D为小数位数,其精度要比single浮点数和double浮点数为高。对于那些如银行存款这类精度要求的项目可以使用decimal类型,当然系统处理该类型的开销要比浮点数为高。请注意decimal在不指定精度的情况下将使用默认精度整数10位小数0位也就是10位整数。

