修复MSSQL中的浮点错误

问题描述 投票:0回答:1

是否有人有一个方便的脚本来纠正 MSSQL Server FLOAT 列中具有以下值的浮点错误:

-0.369999999999999 0.19999999999999

哪个应该是 -0.37 和 0.2 ?我想运行更新,然后将其放入本专栏的触发器中。

sql-server floating-point repair
1个回答
0
投票

看来是这样

SELECT CAST( CAST(Param1 AS varchar(max)) AS float)
 FROM myTable

将返回一个消除了精度误差的浮点数,其中 Param1 本来就是一个 FLOAT!

因此要更新所有行:

UPDATE myTable SET Param1 = CAST( CAST(Param1 AS varchar(max)) AS float)
© www.soinside.com 2019 - 2024. All rights reserved.