我正在2008 SQLServer的按下表:小數四捨五入合併?
id user program seconds
------------------------------------
9999 'user01' 'pr01' 5
列「秒」被定義爲一個十進制(14,0)和在表中的唯一的行是示出的一個。
所以我嘗試了一些疑問:
Q1:
select seconds*0.95 from myTable
union all
select seconds from myTable
它給我希望得到的結果:
4.75
5.00
Q2:
select sum(seconds)*0.95 from myTable
union all
select sum(seconds) from myTable
我期待與Q1相同的結果,但結果LT我得到的是:
5
5
Q3:
select sum(seconds)*0.95 from myTable
union all
select sum(seconds)*1.00 from myTable
在這種情況下,我得到的結果我想到:
4.75
5.00
所以,我想知道爲什麼Q2是沒有得到預期的結果。
我試過同樣的例子,'秒'是小數(2,0),工作正常,所以我想它與小數的大小有關,但在這種情況下,我不明白爲什麼Q1和Q3工作而Q2則沒有。
我試着用十進制(2,0),它似乎並沒有工作 –