Ben aşağıdaki tabloya SQLServer 2008 üzerinde çalışıyorum:Toplamlar birliğinde ondalık yuvarlama?
id user program seconds
------------------------------------
9999 'user01' 'pr01' 5
Sütun 'saniye' bir ondalık (14,0) ve tabloda yalnızca satır olarak tanımlanır gösterilen biridir.
yüzden bazı sorgular deneyin:
S1:
select seconds*0.95 from myTable
union all
select seconds from myTable
O beklediğim sonuçları verir:
4.75
5.00
S2:
select sum(seconds)*0.95 from myTable
union all
select sum(seconds) from myTable
bekliyordum Q1 ile aynı sonuç ama resu lt I olsun:
5
5
S3: Bu durumda
select sum(seconds)*0.95 from myTable
union all
select sum(seconds)*1.00 from myTable
Ben sonuç beklediğim olsun: Yani
4.75
5.00
, ben Q2 almıyor neden bilmek istiyorum beklenen sonuçlar.
Aynı örneği "saniye" ondalık (2,0) olarak denedim ve iyi çalışıyor, bu yüzden ondalık büyüklüğüyle ilgili bir şey olduğunu tahmin ediyorum, ancak bu durumda Q1 ve Q3'ün neden çalıştığını anlayamıyorum Q2 ise değil.
geri ondalık (2,0) ile çalışıyorum ve o da –