時間:2024-03-11 15:08作者:下載吧人氣:22
很多時候,大家都知道,浮點型這個東西,本身存儲就是一個不確定的數值,你永遠無法知道,它是 0 = 0.00000000000000123 還是 0 = 0.00000000000999這樣的東西。也許一開始使用的時候沒有問題,但是有時候做統計的時候,就會看出端倪
簡單的舉個例子,就知道統計的時候,有可能出現意外的效果,導致可能需要存儲過程或者接收程序的代碼左額外的取舍數位的處理,所以在此其實我是推薦使用Numeric來替代float進行一個替代使用,避免一個sum ,然后明明明細看每一條數據都是正常的2,3位小數,一匯總就變成了8,9位的樣子
CREATE TABLE #T (ID INT IDENTITY,Va FLOAT)
CREATE TABLE #T1 (ID INT IDENTITY,Va NUMERIC(15,9))
–分開執行————————————————-
INSERT INTO #T
( Va )
VALUES ( 0.60000000)
INSERT INTO #T1
( Va )
VALUES ( 0.60000000)
GO 100
SELECT SUM(Va) FROM #T
SELECT SUM(Va) FROM #T1
———————-
60.0000000000001
(1 行受影響)
—————————————
60.000000000
(1 行受影響)
網友評論