我得到了一张包含以下数据的表格。
我需要做的就是查询计算 10% 的伤害,所以我做了以下事情:
SELECT damage = (damage * 10) /100
,[Peril_Code]
FROM [LocExposure].[dbo].[myTable]
这将返回以下结果:
[Damage] 列是一个浮点数。
我无法弄清楚为什么它返回错误的计算。
我得到了一张包含以下数据的表格。
我需要做的就是查询计算 10% 的伤害,所以我做了以下事情:
SELECT damage = (damage * 10) /100
,[Peril_Code]
FROM [LocExposure].[dbo].[myTable]
这将返回以下结果:
[Damage] 列是一个浮点数。
我无法弄清楚为什么它返回错误的计算。
你的输出是正确的。没有错误。请检查2.44E-06
您的实际值所在的结果2.44E-05
。
所以,没有错误。
更新:
为了避免科学记数法,您可以通过以下帖子
DECLARE @Damage TABLE
(
Damage FLOAT,
PerilCode CHAR(1)
)
INSERT INTO @Damage VALUES
(2.44253351044103E-05 , 'T'),
(0.000125444785042888 , 'T'),
(0.00015258112714104 , 'T'),
(0.000238995871781784 , 'T'),
(0.000267978447740977 , 'T')
SELECT Damage, Damage * 0.1 [10%], PerilCode
FROM @Damage
输出
Damage 10% PerilCode
---------------------------------------------------------
2,44253351044103E-05 2,44253351044103E-06 T
0,000125444785042888 1,25444785042888E-05 T
0,00015258112714104 1,5258112714104E-05 T
0,000238995871781784 2,38995871781784E-05 T
0,000267978447740977 2,67978447740977E-05 T