MySQL数据表设计之字段选型

小数选择

在MySQL中,存小数类的值有float,double,decimal三种数据类型。下面是各种数据类型的对比。

数据类型 字节数 有符号长度 无符号长度 作用
float 4字节 (1.175 494 351 E-38,3.402 823 466 351 E+38) (-3.402 823 466 E+38,-1.175 494 351 E-38) 单精度,双精度
double 8字节 (2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) (-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308) 单精度,双精度
decimal(M,D) 对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2 依赖于M和D的值 依赖于M和D的值 小数值

使用区别

1.存金额的时候,可以使用decimal类型。float和double存的是浮点类型,而decimal存的是字符串类型的值,因此使用decimal可以减少精度的丢失。这也取决于不同的操作系统。同时可以将我们的金额✖️100存储,将字段设置为int类型,在显示界面时在➗100。参考文章