diff --git a/expected/type_support.out b/expected/type_support.out index 0a20ce51..ebf08f7f 100644 --- a/expected/type_support.out +++ b/expected/type_support.out @@ -117,6 +117,29 @@ SELECT * FROM float8_tbl; 4.582345020342342e+20 (3 rows) +-- NUMERIC as DOUBLE +CREATE TABLE numeric_as_double(a NUMERIC); +INSERT INTO numeric_as_double SELECT a FROM (VALUES + (0.234234234), + (NULL), + (458234502034234234234.000012) +) t(a); +select pg_typeof(a) from numeric_as_double; + pg_typeof +----------- + numeric + numeric + numeric +(3 rows) + +SELECT * FROM numeric_as_double; + a +------------------------------ + 0.234234234 + + 458234502034234234234.000012 +(3 rows) + DROP TABLE chr; DROP TABLE small; DROP TABLE intgr; @@ -126,3 +149,4 @@ DROP TABLE date_tbl; DROP TABLE timestamp_tbl; DROP TABLE float4_tbl; DROP TABLE float8_tbl; +DROP TABLE numeric_as_double; diff --git a/sql/type_support.sql b/sql/type_support.sql index d348c31e..719f44d3 100644 --- a/sql/type_support.sql +++ b/sql/type_support.sql @@ -57,6 +57,16 @@ INSERT INTO float8_tbl SELECT CAST(a AS FLOAT8) FROM (VALUES ) t(a); SELECT * FROM float8_tbl; +-- NUMERIC as DOUBLE +CREATE TABLE numeric_as_double(a NUMERIC); +INSERT INTO numeric_as_double SELECT a FROM (VALUES + (0.234234234), + (NULL), + (458234502034234234234.000012) +) t(a); +select pg_typeof(a) from numeric_as_double; +SELECT * FROM numeric_as_double; + DROP TABLE chr; DROP TABLE small; DROP TABLE intgr; @@ -66,3 +76,4 @@ DROP TABLE date_tbl; DROP TABLE timestamp_tbl; DROP TABLE float4_tbl; DROP TABLE float8_tbl; +DROP TABLE numeric_as_double;