问题
Anybody have any idea why this SSIS expression is not working
The derived column name is from_service_date_yyyymmdd
The expression is
(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 all have valid values
The output from the derived column transformation does not have from_service_date_yyyymmdd. I can't figure out why.
回答1:
your expression looks fine, but you missed the brackets in the columns names, and you have to cast columns to DT_WSTR instead of DT_STR because RIGHT() function result is of type DT_WSTR, and cast the whole result to DT_DTR if needed
(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))
来源:https://stackoverflow.com/questions/43332470/ssis-expression