精確的數字

精確數字資料型別有兩個基本類 - 整數固定精度和比例

整數資料型別

  • TINYINT
  • SMALLINT
  • INT
  • BIGINT

整數是從不包含小數部分的數值,並始終使用固定數量的儲存。整數資料型別的範圍和儲存大小如下表所示:

資料型別 範圍 儲存
0 或 1 1 位**
TINYINT 0 到 255 1 個位元組
SMALLINT -2 ^ 15(-32,768)到 2 ^ 15-1(32,767) 2 個位元組
INT -2 ^ 31(-2,147,483,648)到 2 ^ 31-1(2,147,483,647) 4 位元組
BIGINT -2 ^ 63(-9,223,372,036,854,775,808)至 2 ^ 63-1(9,223,372,036,854,775,807) 8 個位元組

修復了精度和比例資料型別

  • 數字
  • 十進位制
  • SMALLMONEY

這些資料型別可用於準確表示數字。只要值可以在資料型別中可儲存的值範圍內,該值就不會出現舍入問題。這對於任何財務計算都很有用,其中舍入誤差將導致會計師的臨床精神錯亂。

請注意, decimalnumeric 是同一資料型別的同義詞。

資料型別 範圍 儲存
十進位制[(p [,s])]或數字[(p [,s])] -10 ^ 38 + 1 到 10 ^ 38 - 1 請參見精密

定義十進位制數字資料型別時,可能需要指定 Precision [p]和 Scale [s]。

精度是可以儲存的位數。例如,如果需要儲存介於 1 和 999 之間的值,則需要精度為 3(將三位數保持為 100)。如果未指定精度,則預設精度為 18。

Scale 是小數點後的位數。如果需要儲存介於 0.00 和 999.99 之間的數字,則需要指定 5 的精度(5 位數)和 2 的刻度(小數點後的兩位數)。你必須指定精度以指定比例。預設比例為零。

十進位制數字資料型別的精度定義了儲存值所需的位元組數,如下所示:

精密工作臺

精確 儲存位元組
1 - 9
10-19 9
20-28 13
29-38 17

貨幣固定資料型別

這些資料型別專門用於會計和其他貨幣資料。這些型別具有固定的 4 級 - 你將始終在小數位後看到四位數。對於使用大多數貨幣的大多數系統,使用 Scale 為 2 的數值就足夠了。請注意,沒有關於所表示貨幣型別的資訊與值一起儲存。

資料型別 範圍 儲存
-922,337,203,685,477.5808 至 922,337,203,685,477.5807 8 個位元組
SMALLMONEY -214,748.3648 至 214,748.3647 4 位元組