这是派生列“ReplaceWeight”的表达式
LEN(TRIM(Weight)) == 0 ? (DT_STR,50,1252)NULL(DT_STR,50,1252) : (DT_STR,50,1252)Weight
我不清楚这个 IF 语句的 True 部分的语法......
我将其读作“如果修剪列'Weight'的长度为零,则将派生列ReplaceWeight分配为字符串类型的NULL值?? ELSE将Weight列转换为字符串并将此值分配给派生列”
表达式生成器告诉我
NULL(DT_STR,50,1252)
...返回指定数据类型 DT_STR 的 NULL 值。这对我来说有点奇怪,因为我习惯 NULL 是各种类型的数据库列的值。
我是否可以解释以下意思是“将 STRING 数据类型的空值转换为 STRING 数据类型?”
(DT_STR,50,1252)NULL(DT_STR,50,1252)
我会认为这是有效的:
LEN(TRIM(Weight)) == 0 ? NULL : (DT_STR,50,1252)Weight
我是否正确地解释了这段代码?