本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
ROUND函數
該ROUND函數將數字舍入為最接近的整數或小數。
該ROUND函數可以選擇性地包含第二個INTEGER
引數作為,以指示在任一方向上四捨五入的小數位數。當您未提供第二個引數時,函數會四捨五入為最接近的整數。指定第二個引數 integer 時,函數會捨入為具有 integer 小數位數的最接近的數字。
語法
ROUND(number [ , integer ] )
引數
- number
-
數字或評估為數字的運算式。它可以是
DECIMAL
、FLOAT8
或SUPER
類型。Amazon Redshift 可以隱含轉換其他數字資料類型。 - integer
(選用)
INTEGER
,表示沿任一方向捨入的小數位數。此引數不支援SUPER
資料類型。
傳回類型
ROUND會傳回與輸入數字相同的數值資料類型。
當輸入為 SUPER
類型時,輸出會保留與輸入相同的動態類型,而靜態類型仍然是 SUPER
類型。當 SUPER
的動態類型不是數字時,Amazon Redshift 會傳回 NULL
。
範例
下列範例使用範TICKIT例資料庫。如需詳細資訊,請參閱範本資料庫。
若要將給定交易的已付佣金四捨五入至最接近的整數,請使用下列範例。
SELECT commission, ROUND(commission) FROM sales WHERE salesid=10000;
+------------+-------+ | commission | round | +------------+-------+ | 28.05 | 28 | +------------+-------+
若要將給定交易的已付佣金四捨五入至第一位小數,請使用下列範例。
SELECT commission, ROUND(commission, 1) FROM sales WHERE salesid=10000;
+------------+-------+ | commission | round | +------------+-------+ | 28.05 | 28.1 | +------------+-------+
若要以上一個範例的反方向延伸精確度,請使用下列範例。
SELECT commission, ROUND(commission, -1) FROM sales WHERE salesid=10000;
+------------+-------+ | commission | round | +------------+-------+ | 28.05 | 30 | +------------+-------+