我正在开发一个 SSIS 包,它将使用来自其他 SP 列表的数据填充 SharePoint 2013 列表。
我在包中创建了一个派生列,旨在根据大于或等于数据列表中特定日期的日期替换 null。但是,我在表达上遇到了麻烦。下面是我遇到问题的条件和表达式示例。
REPLACENULL(ColumnName,"mm/dd/yyyy" > = GETDATE())
感谢您指出我做错了什么的任何帮助。
我正在开发一个 SSIS 包,它将使用来自其他 SP 列表的数据填充 SharePoint 2013 列表。
我在包中创建了一个派生列,旨在根据大于或等于数据列表中特定日期的日期替换 null。但是,我在表达上遇到了麻烦。下面是我遇到问题的条件和表达式示例。
REPLACENULL(ColumnName,"mm/dd/yyyy" > = GETDATE())
感谢您指出我做错了什么的任何帮助。
使用这个表达式:
((DT_DATE)"9-1-2016") >= (DT_DATE)ColumnName ? NULL((DT_WSTR, 50)) : ColumnName
REPLACENULL
这里对你没有用。REPLACENULL
它的作用是
:如果第一个表达式参数的值为 NULL,则返回第二个表达式参数的值。(参见此处)
你不想换NULL
,你要NULL
!
语法 for REPLACENULL
is REPLACENULL(expression 1,expression 2)
where
表达式 1 :此表达式的结果与 NULL 进行检查。
表达式 2:如果第一个表达式的计算结果为 NULL,则返回此表达式的结果。
如果您尝试根据另一列的日期时间条件替换列的 NULL 值,请尝试以下操作:
[column_1] >= GETDATE() ? REPLACENULL([column_2],"desired value") : [column_2]