我有一个名为 Amount 的数据库表字段,其类型为十进制(18,6)。所以它存储在数据库中最多 6 个小数点,如 9.786534 但是在使用选择查询检索该字段时,我必须注意如下
如果我们编写简单的查询,例如
从 EmployeeMaster 中选择 TOP 1 Amount
然后它给出 9.230000
但我的意图是删除尾随零..
请帮我..
最佳答案
它适用于删除尾随零,但我仍然无法转换 9
至 9.00
在这个方法中。
Declare @myvalue varchar(50),
@Price Varchar(50)
Set @Price = '9.230000'
set @Myvalue = reverse(substring(@Price,patindex('%.%',@Price)+1,len(@Price)))
SELECT
case
When patindex('%.%[1-9]%',@price) = 0 Then
substring(@price,1,patindex('%.%',@price)-1)
else
substring(@price,1,patindex('%.%',@price)-1) + '.' + Reverse(substring(@Myvalue,patindex('%[1-9]%',@Myvalue),len(@Myvalue)))
END
关于sql - 从十进制数中删除尾随零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10344988/