SQL如何存储列十进制值?

时间:2016-02-23 20:01:06

标签: sql-server ssms

SQL Server实际上存储所有小数位,或者只是最后一位有效数字?

即。它存储 1.700 还是 1.7

当我在SSMS中查询时,我得到1.700的结果,但其他应用程序查看数据库报告1.7,所以我不知道应用程序是否只是整洁或SSMS是否报告到列的小数位。 / p>

我正在查看的列的数据类型是numeric(10.3)

1 个答案:

答案 0 :(得分:3)

数字(10,3)列将始终将数据存储到第3个小数位。

如果显示的方式有所不同,则这些差异是由用于查看数据的应用程序引起的。

在SSMS中,此代码:

DECLARE @d numeric(10,3) = 1.7

SELECT @d

将始终产生此结果:

1.700