talend - 在 tOutput 之前放置一个逻辑
talend - put a logic before tOutput
我有一份 talend 工作,它包含以下组件:
- 1个从数据库中获取数据的数据库输入组件
- 1 个将获取的数据写入平面文件的输出组件。
现在,我有一个场景,其中,根据一些 if else 逻辑,从获取的数据的两个字段中,只有一个应该放在输出中。
谁能帮我解决这个问题?是否使用 tMap?
您的 if/else 逻辑可以放在 tMap 中;作为 tMap 输出中的三元运算符。
condition?resultifOK:resultifKO
例如,如果 ColumnA 的值是 "MY CONDITION",您想在文件中插入 ColumnA 的值,否则您插入 ColumnB 的值:
您将直接在 tMap 的输出行中获得:
"MY CONDITION".equals(row1.ColumnA)?row1.ColumnA:row1.ColumnB
您不能在 tMap 中直接使用 if/else。如果您有多个条件,请考虑使用 Routine 而不是多个三元运算符。
我有一份 talend 工作,它包含以下组件: - 1个从数据库中获取数据的数据库输入组件 - 1 个将获取的数据写入平面文件的输出组件。
现在,我有一个场景,其中,根据一些 if else 逻辑,从获取的数据的两个字段中,只有一个应该放在输出中。
谁能帮我解决这个问题?是否使用 tMap?
您的 if/else 逻辑可以放在 tMap 中;作为 tMap 输出中的三元运算符。
condition?resultifOK:resultifKO
例如,如果 ColumnA 的值是 "MY CONDITION",您想在文件中插入 ColumnA 的值,否则您插入 ColumnB 的值:
您将直接在 tMap 的输出行中获得:
"MY CONDITION".equals(row1.ColumnA)?row1.ColumnA:row1.ColumnB
您不能在 tMap 中直接使用 if/else。如果您有多个条件,请考虑使用 Routine 而不是多个三元运算符。