当前位置: 代码迷 >> Sql Server >> 怎样用round函数实现标准的统一的小数点后面两位的显示啊解决思路
  详细解决方案

怎样用round函数实现标准的统一的小数点后面两位的显示啊解决思路

热度:64   发布时间:2016-04-27 19:18:28.0
怎样用round函数实现标准的统一的小数点后面两位的显示啊?
我用了round(字段名,2)函数之后,发现由于有些数是整数,所以显示出来小数后面只有一个0,造成了参差不齐的情况,有些后面只显示一位,有些后面显示两位,如下:

342.0
256.23
9.26
10.0

通过sql的函数没有办法实现统一的吗?只有用程序代码控制吗?

------解决方案--------------------
SQL code
convert(decimal(8,2),col)
------解决方案--------------------
探讨

select distinct d.*,convert(decimal(8,2),total_value) from ...

执行之后,出现如下错误提示:

将 float 转换为数据类型 numeric 时发生算术溢出错误。

其中total_value字段是float类型,是不是其中有null值存在的缘故?如果是如何避免、。

引用:……

------解决方案--------------------
SQL code
select convert(decimal(8,2),round(10,2))
------解决方案--------------------
SELECT 字段名=Cast(0 As Numeric(10,2))--用这个可以设置为统一的格式,Numeric(10,2)表示小数位前面允许最多显示10位数,小数点后面固定显示两位小数不够的用0代替(可以改这参数来设定不同的小数位数格式),但是这个是不会做四舍五入的。
  相关解决方案