Collections:

Differences of DECIMAL and FLOAT in SQL Server

Q

What Are the Differences between DECIMAL and FLOAT in SQL Server Transact-SQL?

✍: FYIcenter.com

A

DECIMAL and FLOAT are both used to store numerical values. But they have the following main differences:

- DECIMAL(p,s) stores values with the decimal point fixed at the position of s (scale) digits from the right. The total number of decimal digits is also fixed as p (precision).
- FLOAT(n) stores values with the decimal point floating based on the value. The number of bits used to store the mantissa part is fixed as n.
- If the input value of DECIMAL(p,s) has more digits after the decimal point than the scale s, the value will be rounded to the scale s.
- If the input value of FLOAT(n) has more total digits (mantissa) than what n bits can store, the value will be rounded to fit the storage size.
- If the input value of DECIMAL(p,s) has more digits before the decimal point than p-s, SQL Server will give you an over-flow error.
- If the input value of FLOAT(n) is too big that the exponential part goes over the positive limit, SQL Server will give you an over-flow error.
- If the input value of FLOAT(n) is too small that the exponential part goes over the negative limit, SQL Server will give you an under-flow error.

**⇒** Date and Time Data Types in SQL Server Transact-SQL

**⇐** Underflow and Overflow of FLOAT Values in SQL Server Transact-SQL

2017-04-15, 1889🔥, 0💬

Popular Posts:

How to run Queries with SQL Server Management Studio Express in SQL Server? 1. Launch and connect SQ...

What Is the Difference Between GETDATE() and GETUTCDATE() in SQL Server Transact-SQL? The difference...

How To Assign Debug Privileges to a User in Oracle? In order to run SQL Developer in debug mode, the...

How To Generate CREATE VIEW Script on an Existing View in SQL Server? If you want to know how an exi...

How To Insert New Line Characters into Strings in SQL Server Transact-SQL? If you want to break a st...