论文中基于日期的条件

时间:2019-01-28 15:53:28

标签: sql sql-server ssis

我在sql server中的where条件中尝试了以下代码,并且该代码正在运行。当我尝试在SSIS条件拆分转换中实现相同功能时,出现错误。有人可以指导我在SSIS条件下更正语法吗?

[A_date] >= DATEADD(d,0,GETDATE())  - 14

谢谢

1 个答案:

答案 0 :(得分:3)

我假设您要查找的条件是当前日期之前或之后14天?如果是这样,则下面的表达式对此进行了验证。在SSIS中,datepart参数需要用引号引起来。虽然可以使用D的缩写来代替DAY,但为了清楚起见,我建议使用DAY

[A_date] >= DATEADD("DAY",-14,GETDATE())

更新为空评估错误:

这是由空列引起的。条件拆分中的任何条件都必须返回true或false,而null则不返回这两个值,因此会导致您收到错误。使用REPLACENULL函数可将任何空值替换为默认值,具体取决于您要如何评估它们。例如,如果要将A_date中的所有null都视为当前日期,请使用以下表达式。

REPLACENULL([A_date], GETDATE()) >= DATEADD("DAY",-14,GETDATE())