The Decimal data type is a numerical data type used to represent decimal numbers with a fixed precision and scale. It is commonly used in programming languages and databases to store and manipulate monetary values, quantities with precise decimal calculations, or any other data where precision is crucial.

  • It differs from floating-point types, such as Float or Double, as it offers a higher level of accuracy and precision. It allows for precise decimal arithmetic without the loss of precision that can occur with floating-point representations.
  • In most programming languages, Decimal typically consists of two components: precision and scale. The precision defines the total number of digits that can be stored, while the scale represents the number of digits that can be stored after the decimal point. For example, a Decimal data type with precision 10 and scale 2 can represent numbers like 12345.67 or 0.12.

The Decimal data type is especially useful in financial and monetary calculations, where accuracy and precision are vital to avoid rounding errors and ensure correct calculations. It provides a reliable and consistent representation of decimal numbers, making it suitable for handling calculations involving money, taxes, percentages, and other similar scenarios.

The Decimal data type stores a precise value, including decimal places, which makes it the recommended type for money.

  • By default on SQL Server, it's stored with 38 digits including 2 decimal places.

You can change the number of decimal places by setting the Scale attribute on the attribute. Precision on the attribute controls the number of digits in the attribute as a whole.

For example, Precision 38 and Scale 4 will create a 38-digit number with 4 digits as decimals.

Note: You need to set both Precision and Scale to something other than -1, otherwise none of them will be used.

See also: Number conversions

This page was edited 29 days ago on 06/17/2024. What links here