我需要将FORM_YEAR
设为派生列的年份。派生列称为Invoice_Document_Date
,其数据类型为DateTime,所以我只想获取年份。对于我的表达,我写了YEAR(dc_Invoice_Document_Date)
,但这似乎不对。我缺少了什么才能使这个表达成功?
确保列SSIS数据类型不是DT_DBTIMESTAMPOFFSET
或DT_DBTIMESTAMP2
。由于在官方文件中他们提到:
当日期文字显式转换为以下日期数据类型之一时,表达式无法验证:DT_DBTIMESTAMPOFFSET和DT_DBTIMESTAMP2。
您可以尝试将dc_Invoice_Document_Date
转换为DT_DATE
、DT_DBDATE
或DT_DBTIMESTAMP
数据类型。例如:
YEAR((DT_DBTIMESTAMP)[dc_Invoice_Document_Date]))
您也可以使用DATEPART((函数,如下所示:
DATEPART("yy",[dc_Invoice_Document_Date]))