DECIMAL provides an exact numeric in which the precision and scale can be arbitrarily sized. You can specify the precision (the total number of digits, both to the left and the right of the decimal point) and the scale (the number of digits of the fractional component). The amount of storage required is based on the precision.
The precision must be between 1 and 31. The scale must be less than or equal to the precision.
If the scale is not specified, the default scale is 0. If the precision is not specified, the default precision is 5.
An attempt to put a numeric
value into a DECIMAL is allowed as long as any non-fractional precision is
not lost. When truncating trailing digits from a DECIMAL value,
For example:
When mixed with
other data types in expressions, the resulting data type follows the rules
shown in
See also
When two decimal values are
mixed in an expression, the scale and precision of the resulting value follow
the rules shown in
Integer constants too big for BIGINT are made DECIMAL constants.
java.math.BigDecimal
DECIMAL