2014-02-10 18 views
3

我已經創建了一個變量,它將檢查當前日期我如何使用下面的表達式獲取以前的日期?在ssis包中生成以前數據的變量?

"/Report-"+(DT_WSTR,4)YEAR(GETDATE()) 
+ RIGHT("0"+(DT_WSTR, 2) MONTH(GETDATE()) ,2) 
+ RIGHT("0"+(DT_WSTR, 2) DAY(GETDATE()) ,2)+ ".csv" 

Result: 
/Report-20140210.csv 

我怎樣才能得到,如果我需要一個日期

/Report-20140209.csv 

回答

3

您需要將DATEADD表達適用於GETDATE表示要減去一天。

"/Report-" + 
(DT_WSTR, 4) YEAR(dateadd("d", -1, getdate())) 
+ RIGHT("0" + (DT_WSTR, 2) MONTH(dateadd("d", -1, getdate())), 2) 
+ RIGHT("0" + (DT_WSTR, 2) DAY(dateadd("d", -1, getdate())), 2) 
+ ".csv" 

息率/Report-20140209.csv

+0

@bilinkc:非常感謝 – user3203331

1
"/Report-" + 
(DT_WSTR, 4) YEAR(dateadd("d", -1, getdate())) 
+ RIGHT("0" + (DT_WSTR, 2) MONTH(dateadd("d", -1, getdate())), 2) 
+ RIGHT("0" + (DT_WSTR, 2) DAY(dateadd("d", -1, getdate())), 2) 
+ ".csv