我在内部查询中有一个计算字段“MySum”,其计算后的值为58。
我需要获得此值的20%。
如果我给:
MySum * 20 /100, I get 11
如果我给:
((20 * CAST(MySum as decimal(6,2)))/100) , I get 11.60000
如果我给
Round(((20 * CAST(MySum as decimal(6,2)))/100), 2), I still get 11.60000
我要那个,
如果结果为11.6,则应显示12,如果结果为11.4,则应显示11。
我想四舍五入值。有什么功能吗?
最佳答案
在SQL Server中使用ROUND()(See examples )函数
select round(11.6,0)
结果:
12.0
例2:
select round(11.4,0)
结果:
11.0
如果你不想小数部分,你可以做
select cast(round(11.6,0) as int)
关于SQL格式自四舍五入开始删除小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12706689/