Pur*_*ome 5 .net floating-point double decimal
我正在做一些非常简单的数学运算并将结果保存到MS SQL2008数据库中.
我正在平均一些数字,这些数字是1 < - > 5之间的字节值.我希望只记录2位小数.我不关心舍入小数点后第二位(例如,1.155 == 1.5或1.6 ..我不是太分阶段).
那么..我应该将平均结果存储为浮点数,小数或双倍?
当我检查LINQ返回的内容时,它可以返回所有三个值!
最后,相关的SQL数据类型字段也是如此.
干杯!
您需要的是 DECIMAL 数据类型:
declare @val decimal(10,2)
select @val = 10.155
select @val
Run Code Online (Sandbox Code Playgroud)
输入值时,您可以依赖内置舍入,也可以明确决定所需的舍入方式:
select val = round(10.155, 2, 0) -- rounded
select val = round(10.155, 2, 1) -- truncated
Run Code Online (Sandbox Code Playgroud)
小数(10,2)表示可以使用十位数字,其中小数点后取两位。即decimal(4,2) 可以包含的最大数字是99.99。尝试将其设置为 100 将导致算术溢出。