mysql中decimal数据类型小数位填充问题详解

(编辑:jimmy 日期: 2024/12/26 浏览:2)

前言

在开发过程中,我们往往会用到decimal数据类型。因为decimal是MySQL中存在的精准数据类型。

MySQL中的数据类型有:float,double等非精准数据类型和decimal这种精准。

区别:float,double等非精准类型,在DB中保存的是近似值。

Decimal则以字符串的形式保存精确的原始数值。

decimal介绍:

decimal(a,b)

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

备注:DECIMAL数据类型用于要求非常高的精确度的计算中,这些类型允许指定数值的精确度和计数方法作为选择参数。精确度在这里是指为这个值保存的有效数字的总个数,而计数方法表示小数点后数字的个数。

问题

当decimal类型长度小于14的时候,向decimal类型字段中插入数据时,小数位无效的0会被自动去掉。只有当decimal类型长度大于或者等于14位的时候,小数位无效的0才会保留,同时自动填充小数位。

mysql中decimal数据类型小数位填充问题详解

mysql中decimal数据类型小数位填充问题详解

注意

在页面显示的时候,也需要对数据进行(小数位)格式化,否则无效的0会被去掉。

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。