SSIS 2012 - 如何指定逗号后的位数(精度)

时间:2014-11-25 16:40:36

标签: ssis mathematical-expressions

我在update语句中创建了一个公式,以便根据Date_Key生成Targets。表格'测试'存在两个相关的列:

' Date_Key'(INT)和'目标'(DECIMAL)

我想实现的逻辑如下:

UPDATE       Test
SET          Target = 175+(2.879546*([Date_Key]-25))

它有效,但我想在逗号后面有三位数。

有人能帮助我吗?

提前谢谢!

1 个答案:

答案 0 :(得分:0)

您需要将INT转换为更精确的格式;在你的情况下应该是DECIMAL(X,3)。

UPDATE       Test
SET          Planned_Headcount = 175+(2.879546*(CAST([Date_Key] as DECIMAL(X,3))-25))

上面的“X”应该是一个足以包含数学结果的数字。 12可能就足够了,但你需要测试,因为我不知道[Date_Key]的价值是什么。

另外,请确保您尝试更新的十进制列(“目标”或“计划人数”,无论哪个正确)也至少有3位精度,即DECIMAL(x,3)

这似乎是一个奇怪的要求。