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.

The following table shows the promotion of data types in expressions.

Type promotion in expressionsThis table shows the result of type promotion for each numeric data type when that type is the largest type that appears in an expression. 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)