tsql - 在 ssis 包中生成以前数据的变量?

标签 tsql ssis ftp sql-server-2012 expression

我创建了一个变量来检查当前日期如何使用以下表达式获取以前的日期?

"/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

最佳答案

您需要将 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

关于tsql - 在 ssis 包中生成以前数据的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21687577/

相关文章:

sql - SSIS 命令行 - ORA-00907 : missing right parenthesis

.net - FtpWebResponse 无法为 Ubuntu 服务器上的特定目录名称的 WebRequestMethods.Ftp.MakeDirectory 方法创建目录

Emacs FTP 不适用于 Ubuntu 中的某些站点

php - 通过 sftp php 连接到服务器

sql - 在 SQL Server 中将 varchar 转换为日期时间

sql-server - 检查是否启用了复制

sql - 如何使用基于多个重复列的序列自动对重复行进行编号 (T-SQL)

c# - 使用带有加密连接字符串的 Application.LoadFromSqlServer() 加载 SSIS 包

sql-server - 更改列: null to not null

sql - 不使用 NewID() 的 SQL 上的随机数