Numeric type promotion in expressions

In expressions that use only integer types, promotes the type of the result to at least INTEGER. In expressions that mix integer with non-integer types, promotes the result of the expression to the highest type in the expression. shows the promotion of data types in expressions. Type Promotion in Expressions Largest Type That Appears in Expression Resulting Type of Expression DOUBLE PRECISION DOUBLE PRECISION REAL DOUBLE PRECISION DECIMAL DECIMAL BIGINT BIGINT INTEGER INTEGER SMALLINT INTEGER

For example: -- returns a double precision VALUES 1 + 1.0e0 -- returns a decimal VALUES 1 + 1.0 -- returns an integer VALUES CAST (1 AS INT) + CAST (1 AS INT)