SSIS 派生列将小数转换为 .00
SSIS Derived Column converting decimals to .00
我正在使用 SSIS 2012 并尝试获取派生列步骤来计算和输出准确的百分比。
例如,我有以下等式,其中包含小数点后 2 位数字:
(20177 * 100) / 26032 = 77.50
(3703 * 100) / 26032 = 14.22
在派生列中,我的表达式(@allRecords = 26032)如下:
(DT_NUMERIC,10,2)((已填充 * 100) / @[User::allRecords])
但我不明白为什么 SSIS 会删除前面的数字并用 0 替换它们
非常感谢任何帮助!
此结果 (20177 * 100) / 26032
是 INT
,因此 77
。然后77
转换成十进制就变成了77.00
.
(DT_NUMERIC,10,2)((DT_NUMERIC,10,2)(Populated * 100) / @[User::allRecords])
注意 100.0 这样可以保持精度。毕竟 INT/INT 将 return 为 INT。
(DT_NUMERIC,10,2)((Populated * 100.0) / @[User::allRecords])
我正在使用 SSIS 2012 并尝试获取派生列步骤来计算和输出准确的百分比。
例如,我有以下等式,其中包含小数点后 2 位数字:
(20177 * 100) / 26032 = 77.50
(3703 * 100) / 26032 = 14.22
在派生列中,我的表达式(@allRecords = 26032)如下:
(DT_NUMERIC,10,2)((已填充 * 100) / @[User::allRecords])
但我不明白为什么 SSIS 会删除前面的数字并用 0 替换它们
非常感谢任何帮助!
此结果 (20177 * 100) / 26032
是 INT
,因此 77
。然后77
转换成十进制就变成了77.00
.
(DT_NUMERIC,10,2)((DT_NUMERIC,10,2)(Populated * 100) / @[User::allRecords])
注意 100.0 这样可以保持精度。毕竟 INT/INT 将 return 为 INT。
(DT_NUMERIC,10,2)((Populated * 100.0) / @[User::allRecords])