本文件已封存並已停止維護。
ROUND (Transact-SQL)
SQL Server 2005
傳回數值,捨入到指定的長度或有效位數。
- numeric_expression
-
這是精確數值或近似數值資料類型類別目錄的運算式,但 bit 資料類型除外。
- length
-
這是 numeric_expression 捨入的有效位數。length 必須是 tinyint、smallint 或 int 類型的運算式。當 length 是正數時,numeric_expression 會捨入到 length 所指定的十進位數。當 length 是負數時,numeric_expression 會依照 length 所指定,在小數點左側捨入。
- function
-
這是要執行的作業類型。function 必須是 tinyint、smallint 或 int。當省略 function,或其值為 0 (預設值) 時,會捨入 numeric_expression。當指定 0 以外的值時,會截斷 numeric_expression。
A. 使用 ROUND 和估計
下列範例顯示利用 ROUND 來示範的兩個運算式,最後一位數永遠是一項估計。
SELECT ROUND(123.9994, 3), ROUND(123.9995, 3) GO
以下為結果集:
----------- ----------- 123.9990 124.0000
B. 使用 ROUND 和捨入近似值
下列範例顯示捨入和近似值。
SELECT ROUND(123.4545, 2); GO SELECT ROUND(123.45, -2);GO
以下為結果集:
----------
123.4500
(1 row(s) affected)
--------
100.00
(1 row(s) affected)
C. 利用 ROUND 來截斷
下列範例利用兩個 SELECT 陳述式,來示範捨入和截斷之間的差異。第一個陳述式會捨入結果。第二個陳述式會截斷結果。
SELECT ROUND(150.75, 0); GO SELECT ROUND(150.75, 0, 1); GO
以下為結果集:
-------- 151.00 (1 row(s) affected) -------- 150.00 (1 row(s) affected)
顯示:

