Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tsql t-sql十进制赋值更改值_Tsql_Decimal - Fatal编程技术网

Tsql t-sql十进制赋值更改值

Tsql t-sql十进制赋值更改值,tsql,decimal,Tsql,Decimal,为什么下面的select语句返回两个不同的值 declare @tempDec decimal set @tempDec = 1.0 / (1.0 + 1.0) select @tempDec, 1.0 / (1.0 + 1.0) 就在我发布这篇文章的时候,我从一位同事那里发现了这一点 您需要指定默认的精度和比例 这在这种情况下起作用: 声明@tempDec十进制数(3,2) 从MSDN: 十进制[(p[,s])]和数字[(p[,s])] 固定精度和刻度数字。使用最大精度时,有效值介于-10^

为什么下面的select语句返回两个不同的值

declare @tempDec decimal
set @tempDec = 1.0 / (1.0 + 1.0)
select @tempDec, 1.0 / (1.0 + 1.0)

就在我发布这篇文章的时候,我从一位同事那里发现了这一点

您需要指定默认的精度和比例

这在这种情况下起作用: 声明@tempDec十进制数(3,2)

从MSDN:

十进制[(p[,s])]和数字[(p[,s])] 固定精度和刻度数字。使用最大精度时,有效值介于-10^38+1到10^38-1之间。SQL-92十进制的同义词是dec和dec(p,s)。numeric在功能上等同于decimal

p(精度) 小数点左侧和右侧可存储的最大小数位数总数。精度必须是从1到最大精度38之间的值。默认精度为18

s(比例尺)
小数点右侧可存储的最大小数位数。比例必须是从0到p的值。仅当指定了精度时,才能指定比例。默认比例为0;因此,0就在我发布这篇文章时,我从一位同事那里发现了这一点

您需要指定默认的精度和比例

这在这种情况下起作用: 声明@tempDec十进制数(3,2)

从MSDN:

十进制[(p[,s])]和数字[(p[,s])] 固定精度和刻度数字。使用最大精度时,有效值介于-10^38+1到10^38-1之间。SQL-92十进制的同义词是dec和dec(p,s)。numeric在功能上等同于decimal

p(精度) 小数点左侧和右侧可存储的最大小数位数总数。精度必须是从1到最大精度38之间的值。默认精度为18

s(比例尺)
小数点右侧可存储的最大小数位数。比例必须是从0到p的值。仅当指定了精度时,才能指定比例。默认比例为0;因此,0对于像1.0这样的文本来说是可以的,但是如果要从表列中提取数据,则需要转换/转换等式中的第一个计算数字:

convert(decimal, [col1]) / ([col2] + [col3])
-或-


对于像1.0这样的文本来说,这很好,但如果要从表列中提取数据,则需要转换/转换等式中的第一个计算数:

convert(decimal, [col1]) / ([col2] + [col3])
-或-


也就是说,局部变量中的零刻度是在存储点之后删除数据。也就是说,局部变量中的零刻度是在存储点之后删除数据