本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
enable_numeric_rounding
值 (粗體為預設值)
on (true)、ff (false)
描述
指定是否使用數值四捨五入。如果 enable_numeric_rounding
是 on
,Amazon Redshift 會在將 NUMERIC 值轉換為其他數值類型 (例如 INTEGER 或 DECIMAL 時) 使用四捨五入。如果 enable_numeric_rounding
是 off
,Amazon Redshift 會在將 NUMERIC 值轉換為其他數值類型時將其截斷。如需數值類型的相關資訊,請參閱 數值類型。
範例
--Create a table and insert the numeric value 1.5 into it.
CREATE TABLE t (a numeric(10, 2));
INSERT INTO t VALUES (1.5);
SET enable_numeric_rounding to ON;
--Amazon Redshift now rounds NUMERIC values when casting to other numeric types.
SELECT a::int FROM t;
a
---
2
(1 row)
SELECT a::decimal(10, 0) FROM t;
a
---
2
(1 row)
SELECT a::decimal(10, 5) FROM t;
a
---------
1.50000
(1 row)
SET enable_numeric_rounding to OFF;
--Amazon Redshift now truncates NUMERIC values when casting to other numeric types.
SELECT a::int FROM t;
a
---
1
(1 row)
SELECT a::decimal(10, 0) FROM t;
a
---
1
(1 row)
SELECT a::decimal(10, 5) FROM t;
a
---------
1.50000
(1 row)