我刚开始使用SSIS工具,需要快速帮助以按季度加载数据
我的设想是这样的:
我提出了一个查询(源数据库:DB2),将提取2010年1月1日至2021年12月31日的数据(11年的数据),但数据量太大(约300 M),因此我希望拆分数据源查询以按季度加载数据。我尝试按年加载数据,但仍然,我正在获取SSIS服务器无法处理的更多数据量。我创建了一个年循环来循环它,在其中创建了一个脚本任务,后跟一个数据流任务。
例如,
select * from tab1 where start_date >= '2010-01-01' and end_Date <= '2010-12-31'
这我想循环它,(4次加载,1为每个季度)
select from tab1 where start_date >= '2010-01-01' and end_Date <= '2010-03-31'
select from tab1 where start_date >= '2010-04-01' and end_Date <= '2010-06-30'
select from tab1 where start_date >= '2010-07-01' and end_Date <= '2010-09-30'
select from tab1 where start_date >= '2010-10-01' and end_Date <= '2010-12-31'
Year-wise可以很好地工作,但是,我不知道如何将数据加载到Quarter-wise中,我想将每个季度的参数作为参数传递给源查询,所以我总共需要循环48次(2010年至2021年= 11年 * 4个季度)任何帮助都非常感谢。我可以发送我为年循环创建的截图,它工作得非常好。
1条答案
按热度按时间p8ekf7hl1#
我认为解决方案是使用
OFFSET FETCH
子句迭代数据。为什么在使用多个行的同时按季度循环数据会更精确(每次迭代将处理相同数量的数据)。下面的文章提供了一个分步指南:值得一提的是,本文处理的是SQL Server源代码,而您使用的是DB2。因此,在使用
OFFSET FETCH
子句时,您应该考虑到任何语法差异:类似问题: