SQL Server中的减法最多3位小数

时间:2018-01-05 11:57:02

标签: sql-server

我在SQL Server数据库中有表P

在表P中,A列的值为234.6,B列的值为234.595。

查询

select A-B 
from P

产生结果

0.004999999999545

理想情况下应该是

0.005

如何才能将结果设为0.005?

1 个答案:

答案 0 :(得分:1)

如果您的数据类型不合适,则可能会出现异常错误

考虑这3个查询

select cast(234.6 as decimal(12,6)) - cast(234.595 as decimal(12,6))
select cast(234.6 as decimal(12,3)) - cast(234.595 as decimal(12,3))
select cast(234.6 as float) - cast(234.595 as float)

结果是:

0.005000
0.005
0.00499999999999545
根据需要

Cast您的列