超出数字规模时的SQL Server行为 - 如何更改?

时间:2015-10-09 07:52:03

标签: sql-server

在SQL服务器上,当我尝试将值 0.4569 保存到十进制(9,3)列时,该值将被截断。它变为 0.456 。有一种方法如何改变sql server的这种行为?我想将这些数字四舍五入(在我的例子中为 0.457 ),而不是截断它们。

这有什么全球性的设定吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

这是因为列的定义。

http-equiv表示9位数,其中3位是小数位数。

为了存储您的号码而不更改列定义,您必须舍入到3位数才能避免截断,因此http-equiv

答案 1 :(得分:0)

您也可以使用ROUND

SELECT ROUND(0.4569,3) AS Col

输出

Col
0.4570