1

我正在开发一个连接 3 列然后将结果输出到平面文件的 SSIS 包。

第一列是一个 emp_number,长度为 10。我得到的值是"12345"or"123456""1234567"

在我想要的输出中是"12345 "or "123456 "or"1234567 "

我有一个要求,其中我需要有固定大小的列(10),所以如果特定列的长度小于预期长度,我需要用空格填充或填充它,以便长度匹配。

你能帮忙吗?

4

2 回答 2

1

添加一个Derived Column采用列值的转换,将其连接到由 10 个空格(或填充后的总长度应为)组成的字符串,然后使用表达式获取最右边的 10 个字符:

RIGHT("0000000000" + yourcol, 10)
于 2019-06-13T15:41:32.460 回答
1

类似于 iamdave 的答案,但你需要相反:

left(yourcolumn + "          ",10) 

引号之间有 10 个空格。

如果您的列不是字符串,则需要对其进行强制转换:

left((DT_WSTR,10)yourcolumn + "          ",10) 
于 2019-06-13T16:10:26.440 回答