The result type is the same data type as that of the numeric input argument.
If the input argument is defined as a DECIMAL/NUMERIC with precision less than 38, the return DECIMAL/NUMERIC value precision increases by 1. For example, DECIMAL(6,4) returns as DECIMAL(7,4). If the precision is 38, the scale reduces by 1 unless the scale is 0. For example, a DECIMAL(38,38) returns as DECIMAL(38,37).
For information on default data type formats, see Data Type Formats and Format Phrases.