共用方式為


float 和 real (Transact-SQL)

用來搭配浮點數值資料使用的近似數值資料類型。 浮點數資料是近似的;因此,並非資料類型範圍內的所有值都能夠精確地表示。 real 的 ISO 同義字是 float(24)。

適用於:SQL Server (SQL Server 2008 透過目前版本)、Windows Azure SQL 資料庫 (初始版本,透過目前版本)。

主題連結圖示 Transact-SQL 語法慣例

語法

  • float [ (n) ]
    其中 n 是用來儲存科學記號標記法 float 數之尾數的位元數目,因此,它規定了有效位數和儲存體大小。 如果指定 n,它必須是在 153 之間的值。 n 的預設值是 53

    n值

    有效位數

    儲存體大小

    1-24

    7 位數

    4 個位元組

    25-53

    15 位數

    8 個位元組

注意

SQL Server 會將 n 當做兩個可能值的其中一個進行處理。如果 1<=n<=24,便將 n 當作 24 來處理。如果 25<=n<=53,便將 n 當作 53 來處理。

SQL Server float[(n)] 資料類型從 153 的所有 n 值都符合 ISO 標準。 double precision 的同義字是 float(53)。

備註

資料類型

範圍

儲存體

float

- 1.79E+308 到 -2.23E-308、0 及 2.23E-308 到 1.79E+308

這會隨著 n 的值而不同

real

- 3.40E + 38 到 -1.18E - 38、0 及 1.18E - 38 到 3.40E + 38

4 個位元組

轉換 float 與 real 資料

將 float 值轉換成任何整數類型時都會截斷。

當您想要從 float 或 real 轉換成字元資料時,使用 STR 字串函數比 CAST( ) 來得有用。 這是因為 STR 可以對格式有較多的控制。 如需詳細資訊,請參閱<STR (Transact-SQL)>和<內建函數 (Transact-SQL)>。

如果您將使用科學記號標記法的 float 值轉換成 decimal 或 numeric,就會限制為只有 17 個有效位數的值。 有效位數超過 17 的任何值都會捨入為零。

請參閱

參考

ALTER TABLE (Transact-SQL)

CAST 和 CONVERT (Transact-SQL)

CREATE TABLE (SQL Server)

資料類型 (Transact-SQL)

DECLARE @local\_variable (Transact-SQL)

SET @local\_variable (Transact-SQL)

概念

資料類型轉換 (Database Engine)