rry*_*man 3 sql t-sql ssis business-intelligence
我有一个维度表,每天都有一个记录.每条记录都有一个主键,因此示例数据将是:
Dimension Table --------------- --------------------------------- | ID | DateTime | --------------------------------- | 1083 | 04/10/2008 10:02:00 PM | ---------------------------------
我要做的是获取具有SQL日期时间值(例如04/10/2008 10:02:00 PM
)的源数据列,并让SSIS从维度表中获取主键(1083
在上面的示例中).我试图将其放入我的包中的数据流中,并避免使用登台表.
我想我的数据流中调用数据库函数有我的SSIS包发现timeid
的datetime
记录.我试图使用,DeriveColumn
但似乎不允许使用T-SQL; 而只是内置于ANSI SQL中的函数.
在数据流中是否有另一种方法可以做到这一点?或者我是否需要使用登台表并使用SQLTask
数据流外部来操纵我的数据?
如果我了解你,你有一个带有时间维度的数据集市,你需要获得与特定时间相对应的timeId.
如果这是正确的,那么您想要使用Lookup组件.对于参考表使用类似的东西SELECT timeId, timeStamp FROM TimeDimension
,然后查看保存时间戳的输入列.使用timeId作为输出列,现在数据流中的每一行都将具有与其时间戳对应的timeId.