2016-04-07 11 views
1

Resim örneğinin altında, SQL Server'da Toplam Maliyet v1'i v2'ye tam olarak eşit hale getirmenin bir yolu var mı?SQL Server'da sayılar düzgün bir şekilde nasıl yuvarlanır?

Basit bir satış raporum var.

  • Maliyet 2 ondalık veya 4 ondalık değere sahiptir.
  • Sayım v2, her benzersiz öğenin Sayısı v1 toplamıdır.

SQL Server Toplam Maliyet v1 Benim formülü: nihai toplam maçı v2 bildirmek için bu yukarıdaki formülü değiştirmek için bir yol

SUM(ROUND(([Cost]*(CAST([Count] as INT))), 2)) as 'Total Cost v1' 

var mı? Aksi takdirde liste büyürse, sayılarda büyük fark olur.

Sayım için veri türü ondalıktır (10, 4). Maliyet için veri türü paradır.

enter image description here

+0

için formülünü değiştireyim? – lad2025

+0

Sayım için veri tipi ondalıktır (10, 4). Maliyet için veri türü paradır. – user3486647

+0

ama benim formumda zaten Count'ı INT'ye dönüştürüyorum. Hala başka neyim eksik olduğundan emin değilim. – user3486647

cevap

1

Sen

Eğer `ONDALIK/SAYISAL/MONEY` veya` FLOAT` veri türü kullanıyor musunuz
ROUND(SUM([Cost]*(CAST([Count] as INT))), 2) as 'Total Cost v1' 
İlgili konular