我试图从我写的表达中得到上个月,但我没有运气。我希望能够在上个月的表达式中使用-1,-2等。非常感谢帮助。
MONTH(Created) == MONTH(GETDATE()) && YEAR(Created) == YEAR(GETDATE())
答案 0 :(得分:0)
AFAIK,SSIS中的表达式month()返回DT_I4 - 换句话说普通的int。你应该可以从中减去1。
因此...
MONTH(Created)
应返回int
值,该值表示数据库中类似日期时间的列Created
的月份数MONTH(GETDATE())
应该返回当月MONTH(GETDATE()) - 1
应该在上个月返回;但是你应该注意年终包装,因为那个案例的前一个月是0,如果你使用那个表达式,你应该将数字更正为12 所以,你应该使用的表达式是某些之类的......
MONTH(Created) == CASE WHEN MONTH(GETDATE()) = 1 THEN 12 ELSE MONTH(GETDATE()) - 1 END
&& YEAR(Created) == YEAR(GETDATE())