enable_numeric_rounding - Amazon Redshift

Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊,請參閱部落格文章

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

enable_numeric_rounding

值 (粗體為預設值)

on (true)、ff (false)

Description

指定是否使用數值四捨五入。如果 enable_numeric_roundingon,Amazon Redshift 會在將 NUMERIC 值轉換為其他數值類型 (例如 INTEGER 或 DECIMAL 時) 使用四捨五入。如果 enable_numeric_roundingoff,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)