我有一个由Excel文件提供的SSIS包,我创建了一个变量,它将excel文件名放在派生列中(ctp_finalv_250688.xlsx)
我想知道如何提取文件名的“250688”部分并将其放在另一个派生列中?
非常感谢您的帮助
答案 0 :(得分:1)
我写了一个符合你需要的表达方式。
我的变量varFileName
是以ctp_finalv_250688.xlsx
为输入的字符串。
SUBSTRING( @[User::varFileName] ,LEN( @[User::varFileName] ) - FINDSTRING(REVERSE( @[User::varFileName] ),"_",1) + 2,FINDSTRING(REVERSE( @[User::varFileName] ),"_",1)-6)
将此表达式捕获到另一个变量中,如此示例:
答案 1 :(得分:0)
我希望这是静态命名约定。如果是,这应该使用派生列。
LEFT(RIGHT(@[User::varFileName],11),6)
此外,您可以替换相同的列,以避免添加其他列。