2017-04-14 68 views
2

我有一个文件名SandersCoffeNetwork201604211107。我想使用派生列在SSIS中创建两个新列。不过,我需要的是会从文件名解析SSIS中的文件名

第一列FileFromDate 2016年4月21日

第2列分隔日期的表达FileToDate 2016年11月7日

请建议.... 。

回答

1

假设文件名被存储在一个变量@[User::Filename]

FileToDate

SUBSTRING(RIGHT(@[User::Filename],12), 1, 4) + "-" + 
SUBSTRING(RIGHT(@[User::Filename],4), 1, 2) + "-" + 
SUBSTRING(RIGHT(@[User::Filename],2), 1, 2) 

FileFromDate

SUBSTRING(RIGHT(@[User::Filename],12), 1, 4) + "-" + 
SUBSTRING(RIGHT(@[User::Filename],8), 1, 2) + "-" + 
SUBSTRING(RIGHT(@[User::Filename],6), 1, 2) 

如果该值没有被存储在一个变量

FileToDate

SUBSTRING(RIGHT("SandersCoffeNetwork201604211107",12), 1, 4) + "-" + 
SUBSTRING(RIGHT("SandersCoffeNetwork201604211107",4), 1, 2) + "-" + 
SUBSTRING(RIGHT("SandersCoffeNetwork201604211107",2), 1, 2) 

FileFromDate

SUBSTRING(RIGHT("SandersCoffeNetwork201604211107",12), 1, 4) + "-" + 
SUBSTRING(RIGHT("SandersCoffeNetwork201604211107",8), 1, 2) + "-" + 
SUBSTRING(RIGHT("SandersCoffeNetwork201604211107",6), 1, 2) 
+0

感谢回答你们。 – cynthia0421

+0

@ cynthia0421如果这个答案解决你的问题你必须[接受](http://www.stackoverflow.com/tour)或upvote它,如果你发现它有帮助,否则给答复 – Hadi

+1

@ cynthia0421说谢谢不是方式在stackoverflow上工作 – Hadi