sqlserver中关于float不确定性因素

来源:爱站网时间:2022-10-11编辑:网友分享
本文主要详细介绍了sqlserver中关于float不确定性因素的内容,为此而困扰的小伙伴,希望爱站技术频道小编整理的资料能帮助到你,接下来就让我们一起来看一看吧!

很多时候,大家都知道,浮点型这个东西,本身存储就是一个不确定的数值,你永远无法知道,它是 0 = 0.00000000000000123 还是 0 = 0.00000000000999这样的东西。也许一开始使用的时候没有问题,但是有时候做统计的时候,就会看出端倪

简单的举个例子,就知道统计的时候,有可能出现意外的效果,导致可能需要存储过程或者接收程序的代码左额外的取舍数位的处理,所以在此其实我是推荐使用Numeric来替代float进行一个替代使用,避免一个sum ,然后明明明细看每一条数据都是正常的2,3位小数,一汇总就变成了8,9位的样子

CREATE TABLE #T (ID INT IDENTITY,Va FLOAT)
CREATE TABLE #T1 (ID INT IDENTITY,Va NUMERIC(15,9))
--分开执行-------------------------------------------------
INSERT INTO #T
    ( Va )
VALUES ( 0.60000000)
INSERT INTO #T1
    ( Va )
VALUES ( 0.60000000)
GO 100

SELECT SUM(Va) FROM #T
SELECT SUM(Va) FROM #T1

----------------------
60.0000000000001
(1 行受影响)

---------------------------------------
60.000000000
(1 行受影响)

sqlserver中关于float不确定性因素不知道朋友们是否都看明白了,想要了解更多关于这方面的技术文章内容,来关注爱站技术频道网站吧,一定不会让你失望的。

上一篇:sql注入过程的相关资料

下一篇:SQLserver中关于cube的详细介绍

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载