這個問題是一個後續問題到這一個:如何在SSIS包中按月遞增?
Can I set variables in an SSIS for loop based on a query?
它的要點是,我有用於填充具有兩個值的查詢的foreach循環容器,如下所示:
WHERE SomeDate BETWEEN '1-Jan-2016' AND '31-Dec-2016'
AND Param1 = ? AND Param2 = ?;
但是,我決定不做全年拉,並決定做一個月拉,所以我改變了從這個查詢:
WHERE SomeDate BETWEEN '1-Jan-2016' AND '31-Jan-2016'
AND Param1 = ? AND Param2 = ?;
但是,我寧願不寫12個單獨的,我覺得我可以在一個foreach循環容器中做到這一點。問題是我不知道如何按月遞增SomeDate
。 SomeDate
類型爲datetime
。
我知道,我將不得不窩在第一foreach循環容器月foreach循環容器,但如何將其設置這樣Param1
和Param2
會知道他們的價值是從第一虧損是正義foreach循環容器。
你爲什麼不整整一年?無論如何,SSIS將在數據流中使用批量大小。全年運行查詢需要多長時間?我沒有看到任何性能改進通過逐個做12個查詢。 – asemprini87
當一年的結果CSV超過100 GB時,我認爲每月將是一個更好的主意。 – Leon
但是,您仍然可以從數據庫獲取全年數據並將其分成12個不同的CSV – asemprini87