我正在尝试使用MS-SSIS 2012加载CSV文件。CSV中的日期格式为;
1900-12-12
1987-01-23
.. etc我编写了这段代码来将日期从字符串转换为日期,然后修复空值(并不是每一行都有日期)
(DT_DATE)(SUBSTRING(ISNULL(Geboortedatum) ? "1900-01-01" : Geboortedatum,1,4) + "-" + SUBSTRING(ISNULL(Geboortedatum) ? "1900-01-01" : Geboortedatum,6,2) + "-" + SUBSTRING(ISNULL(Geboortedatum) ? "1900-01-01" : Geboortedatum,9,2))此操作失败..我的原创是;
(DT_DATE)(SUBSTRING(Geboortedatum,1,4) + "-" + SUBSTRING( Geboortedatum,6,2) + "-" + SUBSTRING(Geboortedatum,9,2))它工作得很好,直到我在我的文件中得到空值。有什么想法吗?
发布于 2016-10-03 21:48:33
试试这个吧。比你的代码简单一点,速度快一点:)
(DT_DATE) (ISNULL(Geboortedatum) ? "1900-01-01" : (SUBSTRING(Geboortedatum,1,4) + "-" + SUBSTRING( Geboortedatum,6,2) + "-" + SUBSTRING(Geboortedatum,9,2)))发布于 2016-10-03 22:05:01
这就完成了工作..它似乎不是一个真正的空值。
(DT_DATE)(TRIM(Geboortedatum) == "" ? "1900-01-01" : (SUBSTRING(Geboortedatum,1,4) + "-" + SUBSTRING(Geboortedatum,6,2) + "-" + SUBSTRING(Geboortedatum,9,2)))https://stackoverflow.com/questions/39832321
复制相似问题