作业帮 > 综合 > 作业

sql 中如何舍去小数最后一位为0 如:20.50只能取20.5

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/08/03 05:22:21
sql 中如何舍去小数最后一位为0 如:20.50只能取20.5
转入的相关值,若小数点后的末尾位数存在0值,则转入时不能加0.例如20.50
转入时,值格式须转入20.5.
我用的是SQL Server
sql 中如何舍去小数最后一位为0 如:20.50只能取20.5
--去掉小数点后多余的0 2012-10-26
Declare @number nvarchar(20),@lastnum char(10)
--测试变量
Select @number = 25.00500
--记录最后一们数字
Select @lastnum = SUBSTRING(@number,len(@number),1)
--循环判断,只要最后一位是0,就舍去
while (@lastnum = '0')
begin
Select @number = SUBSTRING(@number,0,len(@number))
Select @lastnum = SUBSTRING(@number,len(@number),1)
end
--结果处理,如果最后一位是‘.’,就舍去
Select case when @lastnum = '.' then substring(@number,0,LEN(@number)) else @number end
Go
--注:你可以把第二行代码的数字替换下,然后所有代码一起执行,看结果是否你你想要的.
再问: 这个循环方法确实可以实现,我发现用cast(25.00500 as float)发现就可以实现了~ 不过谢谢你了~