任何人都知道为什么这个 SSIS 表达式不起作用
派生的列名称是from_service_date_yyyymmdd
表达式为
(DT_STR,4,1252)from_service_date_yyyy + RIGHT("0" + (DT_STR,2,1252)from_service_date_mm,2) + RIGHT("0" + (DT_STR,2,1252)from_service_date_dd,2)
from_service_date_yyyy
, from_service_date_mm
and from_service_date_dd
都有有效值
派生列转换的输出不具有from_service_date_yyyymmdd
。我不明白为什么。
您的表达式看起来不错,但是您错过了列名称中的括号,并且您必须将列转换为DT_WSTR
代替DT_STR
因为RIGHT()
功能result https://learn.microsoft.com/en-us/sql/integration-services/expressions/right-ssis-expression属于类型DT_WSTR
,并将整个结果投射到DT_DTR
如果需要的话
(DT_WSTR,8,1252)((DT_WSTR,4)[from_service_date_yyyy] + RIGHT("0" +
(DT_WSTR,2)[from_service_date_mm],2) + RIGHT("0" +
(DT_WSTR,2)[from_service_date_dd],2))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)