我有一个excel文件,我想从中提取日期并将其加载到维度表中,但仅限于月份和年份。
我想通过SSIS包来做到这一点。
例如我有6/15/2002
我只想采取6/2002
因为在我的维度表中我只有月份和年份
我该怎么办。请帮帮我,这是我最后的项目
它就像这个问题
How to change a Date Column into two separate columns, MONTH and YEAR
答案 0 :(得分:2)
您可以使用Derived Column
转换来完成此操作。 excel源的输出可以保持不变。通过Derived Column
TF获取该输出,添加两个新列Add new columns
,然后最简单的方法是将Date
转换为字符串varchar
或char
(DT_STR
或DT_WSTR
根据您的表架构),然后根据您的条件,使用substring
函数构成每个新列。
例如:Derived Column 1
,<add as new column>
,SUBSTRING( (DT_STR, 20, 1252)Your_Column , 0, 1 ) + SUBSTRING( (DT_STR, 20, 1252)Your_Column , 6, 4 )
代表您的请求
<强>已更新强>
(DT_WSTR, 20)MONTH(YOUR_COLUMN)+ "/" + (DT_WSTR, 20)YEAR(YOUR_COLUMN)
更新第二次
与以前一样,但Derived Column 1
,<add as new column>
,(DT_WSTR, 20)MONTH(YOUR_COLUMN)
为MONTH表达式。
Derived Column 2
,<add as new column>
,(DT_WSTR, 20)YEAR(YOUR_COLUMN)
作为YEAR表达。
您可以将Derived Column 1
或Derived Column 2
重命名为您想要的任何名称,以便以后识别。