Sql SSI检查每月第一个月是否使用变量A运行,如果不使用变量B运行
我有一个ssis包,需要每天运行。但它需要首先进行检查:如果是本月的第一个月,则运行传递变量a的包;如果不是月初,则传递变量B。最好的解决方案是每天从SQL代理运行包。在包本身中,包含一个带有表达式的变量,该表达式检查该变量运行的月份的当前日期(即,使用GETDATE()),分析该日期的日期并检查1。如果为1,则为VariableValueA,否则为VariableValueB。因此,您的表达式如下所示:Sql SSI检查每月第一个月是否使用变量A运行,如果不使用变量B运行,sql,variables,ssis,Sql,Variables,Ssis,我有一个ssis包,需要每天运行。但它需要首先进行检查:如果是本月的第一个月,则运行传递变量a的包;如果不是月初,则传递变量B。最好的解决方案是每天从SQL代理运行包。在包本身中,包含一个带有表达式的变量,该表达式检查该变量运行的月份的当前日期(即,使用GETDATE()),分析该日期的日期并检查1。如果为1,则为VariableValueA,否则为VariableValueB。因此,您的表达式如下所示: DAY(GETDATE()) == 1 ? "VariableA" : "Variable
DAY(GETDATE()) == 1 ? "VariableA" : "VariableB"
注意:确保变量的数据类型与表达式输出匹配。正如您在上面的示例中看到的,输出是string,因此变量的数据类型必须是string。如果变量值为整数,则变量数据类型需要为Int32(如果为64位,则为Int64),以此类推
有关表达式的工作原理,请参见我的答案
最好的解决方案是每天从SQL代理运行包。在包本身中,包含一个带有表达式的变量,该表达式检查该变量运行的月份的当前日期(即,使用GETDATE()),分析该日期的日期并检查1。如果为1,则为VariableValueA,否则为VariableValueB。因此,您的表达式如下所示:
DAY(GETDATE()) == 1 ? "VariableA" : "VariableB"
注意:确保变量的数据类型与表达式输出匹配。正如您在上面的示例中看到的,输出是string,因此变量的数据类型必须是string。如果变量值为整数,则变量数据类型需要为Int32(如果为64位,则为Int64),以此类推
有关表达式的工作原理,请参见我的答案
我已经回答了你的问题。你能确认你的问题是否得到了回答吗?我已经回答了你的问题。你能确认你的问题是否得到了回答吗?