在表达式中获取前一天

时间:2016-10-06 01:05:47

标签: date sql-server-2005 types ssis ssis-2005

因为我是SSIS的新手,所以需要帮助。我得到了一个表达,但我想要昨天,而不是今天。

 "Daily "+ (RIGHT("0" + (DT_STR,4,1252) DatePart("yyyy",getdate()),4))+(RIGHT("0" + (DT_STR,4,1252) DatePart("mm",getdate()),2))+(RIGHT("0" + (DT_STR,4,1252) DatePart("dd",getdate()),2))+".CSV"

目前它看起来像这样

每日20161006.CSV

我想要的是

每日20161005.CSV

2 个答案:

答案 0 :(得分:3)

你走了。

"Daily "
+ (DT_WSTR, 4) YEAR(DATEADD("day",-1,GETDATE()))
+ RIGHT("0" + (DT_WSTR, 2) DATEPART("MM", DATEADD("day", -1, GETDATE())),2)
+ RIGHT("0" + (DT_WSTR, 2) DATEPART("DD", DATEADD("day", -1, GETDATE())),2)
+ ".CSV"

看起来你在澳大利亚,所以它是20161006,但在美国现在,它是20161005,看看它昨天如何显示,20161004在文件中点击评估值

时的名称

enter image description here

答案 1 :(得分:1)

"Daily "+ (RIGHT("0" + (DT_STR,4,1252) DatePart("yyyy",getdate()),4))+(RIGHT("0" + (DT_STR,4,1252) DatePart("mm",getdate()),2))+(RIGHT("0" +(DT_STR,4,1252) (DatePart("dd",getdate())-1),2))+".CSV"

这应该有用。