SSIS 2019 - 派生列字符串 Date/Time MM/DD/YYYY HH:MM:SS.s 到 datetime2

SSIS 2019 - Derived Column String Date/Time MM/DD/YYYY HH:MM:SS.s to datetime2

我有一个通话详细记录数据 (CDR) 的平面文件。有两列包含字符串日期 MM/DD/YYYY 和格式为 HH:MM:SS.s 的时间列。我想将这两列合并为 datetime2 数据类型,但是,我无法实现我想要的目标。

我尝试将两个派生列堆叠在一起,第一个派生列使用以下表达式将数据格式转换为 YYYY-MM-DD

((DT_WSTR,4)YEAR(((DT_DATE)[6]))) + "-" + RIGHT("0" + ((DT_WSTR,2)MONTH(((DT_DATE)[6]))),2) + "-" + RIGHT("0" + ((DT_WSTR,2)DAY(((DT_DATE)[6]))),2)*

* MM/DD/YYYY 存储在 [6] * 验证输出 YYYY-MM-DD

在第二个派生列中,我正在创建一个名为 StartDateTime

的列

Exp: (DT_DBTIMESTAMP2,1)((DT_WSTR,10)SDATE + (DT_WSTR,10)7)

* SDATE来自第一个派生,7是时间HH:MM:SS.s

首先尝试使用派生列将这两列连接起来(因为你说的都是字符串类型),然后使用数据转换任务将合并后的列转换为T_DBTIMESTAMP2

我能够得到一个工作流水线,主要是我以前的代码中的一些 CAST 错误解释。

派生列一:((DT_WSTR,4)YEAR(((DT_DATE)[6]))) + "-" + RIGHT("0" + ((DT_WSTR,2)MONTH(((DT_DATE)[6]))),2) + "-" + RIGHT("0" + ((DT_WSTR,2)DAY(((DT_DATE)[6]))),2)

派生列二:(DT_DBTIMESTAMP2,1)(SDATE + [7])