我在派生列转换中有以下表达式。
((DT_STR,1,1252)outGender == "M" || (DT_I1)outGender == 1) ? 1 : (((DT_STR,1,1252)outGender == "F" || (DT_I1)outGender == 2) ? 2 : 3
当我运行包时,如果“outGender”列包含“1”或“M”,则 GenderId 列变为 1。如果“outGender”为“2”,则 GenderId 列为“2”。到目前为止,这是正确的。但是,如果“outGender”包含“F”,则 GenderId 将为 NULL。这是错误的。
为什么会发生这种情况,我该如何解决?如果我切换条件字符串,将“F”条件放在表达式的第一部分,将“M”条件放在第二部分,则当“outGender”列包含“M”值时,NULL 将出现在行的 GenderId 列中.