场景如下:我是 SSIS 处女,但我找到了一个开始玩它的借口。我有一个以下格式的 Excel 源数据集,每一行代表一个月(一个月的最后一天):
[Date] [Value]
4/30/2008 3.38
5/31/2008 3.65
6/30/2008 3.97
...
我的目的地是一个表,其中每个月的每一天都有一行,其中 [Value] 列是我需要用 Excel 文档中的值填充的空列:
[Date] [Value] [Other columns with distinct data]
4/01/2008 NULL .....
4/01/2008 NULL
4/01/2008 NULL
4/02/2008 NULL
4/02/2008 NULL
4/02/2008 NULL
4/03/2008 NULL
4/03/2008 NULL
4/03/2008 NULL
...
我需要为目标表中相应月份值的每一天在 Excel 文档中复制每个月的单个值,以便上一个表最终看起来像:
[Date] [Value]
4/01/2008 3.38
4/01/2008 3.38
4/01/2008 3.38
4/02/2008 3.38
4/02/2008 3.38
4/02/2008 3.38
4/03/2008 3.38
4/03/2008 3.38
4/03/2008 3.38
...
您可能会想“为什么要跨行重复该值?”,但这只是数据的回填——未来的条目是使用批量保存它们的 Web 应用程序进行的,但可以调整或编辑个别的日条目手动。
所以,我的问题是:我的 Excel 源和我的 SSIS 包中的 SQL Server 目标之间的组件可能是什么?我知道我需要完成什么:
- 对于目标数据集中的每个日期,我想在 Excel 源中查找其日期列中的匹配月份并找到相应的值
- 接下来,我需要将 Excel 值插入到我的 SQL Server 目标的值列中。
- 并重复...
这似乎值得使用 SSIS 吗?这是一次一次性的演出,但就像我说的,我认为这将是一个涉足 SSIS 的好机会。同时,我可能只是要在 Excel 中组合一个快速宏来为我生成一些 UPDATE 语句。
谢谢!