2013-07-16 22 views
5

kullanırsanız Round yanlış değerini döndürür SQL Server 2005'te, float değişkeninde depolanan bir değeri yuvarlamaya çalıştığımda hatalı değerler alıyorum. Aşağıdaki örnekte, ROUND işlevine yapılan her iki çağrının da, 5.6:SQL Server 2005: Float değişkeni

DECLARE @foo float; 
DECLARE @bar float; 
DECLARE @baz float; 

SET @foo = 5.55; 
SET @bar = ROUND(@foo, 1) --> 5.5 
SET @baz = ROUND(5.55, 1) --> 5.6 

Niçin yanlış yapıyorum?

cevap