【问题标题】:Informatica Cloud - CASE stmtInformatica Cloud - CASE stmt
【发布时间】:2022-01-10 17:06:18
【问题描述】:

我想在继续处理之前检查 Informatica 云映射中的数据是否存在。 这是我的 Teradata DB 查询,我想在 informatica 云中做同样的事情

select CASE WHEN A_COUNT = 0 THEN 'FAIL' 
            WHEN B_COUNT = 0 THEN 'FAIL'
            WHEN C_COUNT = 0 THEN 'FAIL'
       ELSE 'PASS'
       END CHECK
from 
(
select SUM(case when source = 'A' then 1 else 0 end) A_COUNT,
       SUM(case when source = 'B' then 1 else 0 B_COUNT,
       SUM(case when source = 'C' then 1 else 0 end) C_COUNT
from TABL1
where source in ('A', 'B', 'C', 'D')
) ;

表:

CREATE TABLE TABL1
(SOURCE CHAR(1), DT DATE);

数据:

INSERT INTO TABL1 ('A', '01-NOV-2021');
INSERT INTO TABL1 ('A', '02-NOV-2021');
INSERT INTO TABL1 ('B', '01-NOV-2021');
INSERT INTO TABL1 ('B', '02-NOV-2021');
INSERT INTO TABL1 ('C', '01-NOV-2021');
INSERT INTO TABL1 ('C', '04-NOV-2021');

我没有将查询作为源的奢侈..这就是我需要创建映射的原因..:(

【问题讨论】:

  • 那么到目前为止,您尝试了哪些方法以及您面临哪些具体问题?就像没有人会为您从头开始编写 SQL 脚本一样,没有人会为您编写 Informatica 映射

标签: informatica informatica-cloud


【解决方案1】:

使用 Aggregator Transformation 计算 SUM,然后使用 Expression TransformationIIF 函数,如:

IIF(A_COUNT = 0 OR B_COUNT = 0 OR C_COUNT = 0; 'FAIL'; 'PASS')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-13
    • 2013-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多