decimal数据类型的用法

mac2024-06-30  62

FLOAT、DOUBLE、DECIMAL区别

float:浮点型,4字节,32bit。

double:双精度实型,8字节,64位

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

decimal(M,N)

M表示:不包括小数点,不包括符号位,所能存数字的总位数(包括小数部分和整数部分) N表示:小数部分数字的位数,由此可知整数部分的位数为M-N;

DECIMAL数据类型用于要求非常高的精确度的计算中,这些类型允许指定数值的精确度和计数方法作为选择参数。精确度在这里是指为这个值保存的有效数字的总个数,而计数方法表示小数点后数字的个数。例如,语句DECIMAL (5,2)规定了存储的值将不会超过5位数字,开且小数点后面有2位数字。

另:

float和double做算术运算,数值溢出不会报错,精度会因此有损失。decimal会直接报错。

money可以更通用的表示金额,对于便利店商品这种通常固定至小数点后2位时,可以使用decimal。

最新回复(0)