注册
DMETL使用SQL向下传递变量(DMETL中,如何写循环)

DMETL使用SQL向下传递变量(DMETL中,如何写循环)

hql 2021/10/13 2499 15 0
摘要 DMETL可以做带数据处理逻辑的同步,同步基于秒级调度;在一些逻辑设计中,我们如果基于一个结果集的每一个行,作为变量向下传递呢?

关键的步骤就只有这一个:

image.png

说明:
1)数据读取里面的SQL查询,可引用传入数据流的结果集中的列;
2)也可以引用全局的一些变量设置。

后面是一个具体的配置例子,我们如何用etl实现这样一个循环:

元数据:
drop table if exists test1;
drop table if exists test2;
create table test1(v1 int);
create table test2(v1 int);
insert into test1 select level from dual connect by level<=10;
commit;
insert into test2 select level from dual connect by level<=10;
commit;

要实现的逻辑:
begin
for rs in (select v1 from test1) loop
insert into test2 select v1*3 from test2 where v1=rs.v1;
end loop;
end;

使用ETL实现这个逻辑的步骤:

  1. 在数据源中添加SQL查询:select v1 from test1
  2. 新建转换:构建SQL查询到SQL脚本的转换
  3. 配置转换,和列引用
  4. 运行作业

具体步骤操作如下:
视频播放地址

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服