SQL Server 2012:将float
转换为varchar
将删除小数位。
例如:
select convert(varchar, cast(834.7833 as float))
以varchar
返回834.783
。
如何在不损失小数位的情况下将float
转换为varchar
?
这是与未解决的问题类似的问题:
How does convert(varchar, float) decide how many decimal places to keep?
答案 0 :(得分:1)
您为什么需要完全CAST(... AS FLOAT)
?
尝试以下代码片段-它们返回完整的小数点位数:
SELECT
CONVERT(VARCHAR(20), 834.7833)
SELECT
CAST(834.7833 AS VARCHAR(20))
这两个都输出以下结果:
834.7833