【发布时间】:2009-11-12 07:12:10
【问题描述】:
将 varchar 值转换为 MONEY 时,会将值四舍五入到最接近的 0.10,如何防止这种四舍五入?
更新:我发现了问题。在子查询中,该值是从 varchar 转换为 FLOAT,然后我试图从 FLOAT 转换为 MONEY。
【问题讨论】:
将 varchar 值转换为 MONEY 时,会将值四舍五入到最接近的 0.10,如何防止这种四舍五入?
更新:我发现了问题。在子查询中,该值是从 varchar 转换为 FLOAT,然后我试图从 FLOAT 转换为 MONEY。
【问题讨论】:
【讨论】:
我不确定我是否理解您的问题。
查看下面的代码时
DECLARE @money AS MONEY,
@varchar AS VARCHAR(20)
SET @varchar = '1000.456789'
SELECT CAST(@varchar AS MONEY)
SELECT @money = @varchar
SELECT @money
它被四舍五入到最接近的小数点后第四位,而不是小数点后第一位。
【讨论】: