sql类型 money 小数不显示开头的0
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql类型 money 小数不显示开头的0相关的知识,希望对你有一定的参考价值。
为什么sql类型 money 小数不显示开头的0
例如0.01 数据库中只储存了 .01
显示在前台也是 .01
如何才能现实出完整的 0.01
或者说如何才能存储 0.01 到数据库而不是存储 .01
FormatNumber(
expression [,NumDigitsAfterDecimal] [,IncludeLeadingDigit [,UseParensForNegativeNumbers] [,GroupDigits]]
)
NumDigitsAfterDecimal:小数点后面的数字保留几位。
IncludeLeadingDigit :如果小于1是否保留小数点前面的0。-1就是保留;0部保留;
UseParensForNegativeNumbers: 用括号还是符号(-)来表示负数。
GroupDigits:是否用逗号来分隔千位数字。如:123,123.00 参考技术A 在前台做数据显示的定制就可以了,不用管数据库怎么保存的。
sql表小数点前面的0不显示问题
往表里插入数据
INSERT emp_pay VALUES (1, 500, .10)
表里第3个字段decimal类型,结果查询出来的时候显示.10,而不是0.10,怎么显示成0.10呢
set @c=0.10
select @c 数字,cast(@c as varchar(20)) 字符
其实从上图中可以看出,SQL输出的结果是没有错的,很可能是程序将其小数点前面的0省略掉了。
参考技术A 查看表里的第三个字段的decimal数据类型,比如decimal(18,0)为取整,decimal(18,2)为插入数据保留2位小数点。decimal(18,2)你插入10的时候会显示位10.00 参考技术B 插入.10,在数据表里看也是0.10的,如果是前台显示问题,那么需要自己格式化下显示格式。 参考技术C 修改下返回的类型,如果是string类型的就可以是这样,可以改为bigDecimal就可以了 参考技术D 显示的时候用convert函数转换成字符类型的,就可以显示成0.10了。以上是关于sql类型 money 小数不显示开头的0的主要内容,如果未能解决你的问题,请参考以下文章