IT *_*her 3 sql-server datatypes sql-server-2008-r2
在 SQL Server 中,float 数据类型在小数点后不显示尾随零
declare @num as float
set @num=5.20
select @num
Run Code Online (Sandbox Code Playgroud)
只会显示5.2
但我希望它显示为5.20
经过一番研究,我发现它可以通过使用来解决
select CAST(@num AS numeric(10,2))
Run Code Online (Sandbox Code Playgroud)
但这不是我期望的解决方案。有没有像设置数据类型或更改数据类型这样的方法,以便我可以实现相同的目标?(如果 float 中有任何变体可以做同样的事情会更好)
如果可能,那么我不需要更改 SQL 语句并包含强制转换等。所以请帮我解决这个问题。
这可以通过decimal数据类型来实现。
请参阅下面的示例:
declare @num as float;
set @num=5.20;
select convert(decimal(10, 2), @num);
Run Code Online (Sandbox Code Playgroud)
这里的输出将是5.20.
重新阅读您的问题后:
但这不是我期望的解决方案。有没有像设置数据类型或更改数据类型这样的方法,以便我可以实现相同的目标?
您是否有理由专门使用float?通常,当绰绰有余时,人们往往会默认使用该数据类型decimal。
| 归档时间: |
|
| 查看次数: |
132974 次 |
| 最近记录: |