分享方式:


DECIMAL 類型

適用於: 檢查標示為是 Databricks SQL 檢查標示為是 Databricks Runtime

表示具有指定最大有效位數和固定小數位數的數位。

語法

{ DECIMAL | DEC | NUMERIC } [ (  p [ , s ] ) ]

p:介於 1 到 38 之間的數位選擇性最大精確度(位數總數)。 預設值為 10。 s:介於 0 和 p之間的數字選擇性小數位數。 小數點右側的位數。 預設值是 0。

限制

數位的範圍:

  • -1Ep + 1 到 -1E-s
  • 0
  • +1E-s 至 +1Ep - 1

例如,DECIMAL(5, 2) 的範圍為:-999.99 到 999.99。

常值

decimal_digits { [ BD ] | [ exponent BD ] }
| digit [ ... ] [ exponent ] BD

decimal_digits:
[ + | - ] { digit [ ... ] . [ digit [ ... ] ]
            | . digit [ ... ] }

exponent:
E [ + | - ] digit [ ... ]

digit:任何從 0 到 9 的數位。

BD後置和指數E不區分大小寫。

範例

> SELECT +1BD;
  1

> SELECT 5E3BD;
  5000

> SELECT 5.321E2BD;
  532.1

> SELECT -6.45
  -6.45

> SELECT typeof(6.45);
  DECIMAL(3,2)

> SELECT CAST(5.345 AS DECIMAL(3, 2));
  5.35

> SELECT typeof(CAST(5.345 AS DECIMAL));
  DECIMAL(10, 0)

> SELECT typeof(CAST(5.345 AS DECIMAL(2)));
  DECIMAL(2, 0)