如何在不丢失小数位的情况下将浮点数转换为varchar? SQL Server 2012

时间:2019-02-28 04:49:06

标签: sql-server-2012

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?

1 个答案:

答案 0 :(得分:1)

您为什么需要完全CAST(... AS FLOAT)

尝试以下代码片段-它们返回完整的小数点位数:

SELECT
    CONVERT(VARCHAR(20), 834.7833)

SELECT
    CAST(834.7833 AS VARCHAR(20))

这两个都输出以下结果:

834.7833