处理informatica平面文件中的空值

时间:2016-01-29 12:47:14

标签: informatica

大家好我的代码看起来像

not null

如果a和b都是null,那么我必须使a [NULL]传递a的值。但是我的逻辑运行不正常,我通过为表达式转换提供详细数据来检查会话日志,但是我在会话日志中的not null值已被视为strings.length!=0。能否帮助我们提供准确的陈述以正确识别空值。  我尝试过使用is_spaces,空auth_type=rerequest个选项。但仍然将空值视为实际值,这是错误的。

1 个答案:

答案 0 :(得分:1)

我认为您需要对ab的条件进行分组,如下所示

IIF
(
     (
        NOT ISNULL(LTRIM(RTRIM(a)))
     OR NOT IS_SPACES(LTRIM(RTRIM(a)))
     OR LTRIM(RTRIM(a)) != ''
     OR LENGTH(LTRIM(RTRIM(a))) != 0
     OR LTRIM(RTRIM(a)) != NULL
     OR LTRIM(RTRIM(a)) != 'NULL'
     )
    AND
     (
        NOT ISNULL(LTRIM(RTRIM(b)))
     OR NOT IS_SPACES(LTRIM(RTRIM(b)))
     OR LTRIM(RTRIM(b)) != ''
     OR LENGTH(LTRIM(RTRIM(b))) != 0
     OR LTRIM(RTRIM(b)) != null
     OR LTRIM(RTRIM(b)) != 'NULL'
     )
  ,NULL
  ,LTRIM(RTRIM(a))
)

希望这有帮助。

注意:我没有优化检查以检查null条件。