HI 我在聚合float值时得到不同的结果。查询如下sql server聚合浮点值
declare @cy datetime
set @d = '12/01/2010'
select SUM(total) from (
select sum(amt1) as total from table1
where date1 < @d
union all
select sum(amt1) as total from table1
where date1 >= @d
) as a
amt1的数据类型为float。
所以查询只是聚合表table1中的列总数。 现在,如果我更改变量@d可以说'01/01/2010'我得到不同的数额。 我不断收到不同的时间范围 为什么会发生这种情况。我希望的结果是一样的,每次我跑这将是从表1
感谢以下 选择总和(AMT1)查询匹配 本
更新查询:我使用UNION ALL。感谢您指出。它仍然给我不同的结果
我正在使用union all(错过了我发布的查询中的内容)并仍然返回不同的值 – user55474 2011-05-27 19:59:13
是第一个查询中“amt1”和第二个中“amt”总和的错字?否则,你可能会非常期待不同的结果。 – 2011-05-27 19:59:52
你有没有试过把你的浮标铸造成更高精度的浮子(24)'我想? – 2011-05-27 20:02:07