Answers:
试试这个
SELECT CONVERT(DECIMAL(10,2),YOURCOLUMN)
使用Str()
功能。它需要三个参数(数字,要显示的字符总数和要显示的小数位数)
Select Str(12345.6789, 12, 3)
显示:“ 12345.679”(3个空格,5个数字12345,一个小数点和三个小数位数(679)。-如果必须截断,则四舍五入(除非整数部分对于总大小而言太大)而是显示星号。)
总共12个字符,小数点右边有3个字符。
通常,您可以通过使用参数定义SQL来定义数字的精度。在大多数情况下,这将是NUMERIC(10,2)
或Decimal(10,2)
-将一列定义为数字,其总数为10位,精度为2(小数位)。
为清晰而编辑
这项工作对我来说总是保持两位数的分数
23.1 ==> 23.10
25.569 ==> 25.56
1 ==> 1.00
Cast(CONVERT(DECIMAL(10,2),Value1) as nvarchar) AS Value2
今天的孩子们是这样的:
DECLARE @test DECIMAL(18,6) = 123.456789
SELECT FORMAT(@test, '##.##')
123.46
DECLARE @test DECIMAL(18,6) = 0.456789
则SELECT FORMAT(@test, '##.##')
返回: .46
如何获取显示前导零的数字: 0.46
?
试试这个:
declare @MyFloatVal float;
set @MyFloatVal=(select convert(decimal(10, 2), 10.254000))
select @MyFloatVal
Convert(decimal(18,2),r.AdditionAmount) as AdditionAmount