decimal 和 numeric (Transact-SQL)

洪岐發表於2010-11-25

帶固定精度和小數位數的數值資料型別。

decimal[ (p[ , s] )] 和 numeric[ (p[ , s] )]

固定精度和小數位數。使用最大精度時,有效值從 - 10^38 +1 到 10^38 - 1。decimal 的 SQL-92 同義詞為 dec 和 dec(p, s)。numeric 在功能上等價於 decimal。

p(精度)

最多可以儲存的十進位制數字的總位數,包括小數點左邊和右邊的位數。該精度必須是從 1 到最大精度 38 之間的值。預設精度為 18。

s(小數位數)

小數點右邊可以儲存的十進位制數字的最大位數。小數位數必須是從 0 到 p 之間的值。僅在指定精度後才可以指定小數位數。預設的小數位數為 0;因此,0 <= s <= p。最大儲存大小基於精度而變化。

精度 儲存位元組數

1 - 9

5

10-19

9

20-28

13

29-38

17

相關文章