数据阶段中的简单循环
Simple loop in datastage
我对数据阶段有一个基本的理解问题。我是这个领域的新手。它是关于循环的实现。首先,我使用连接器阶段获得了 select 查询的几行。现在我想为每一行再做几个步骤。每行的结果现在应该用作进一步阶段的变量。我怎样才能做到这一点?我知道transformer阶段可能有环路,但好像没有解决我的问题
我应该在跳转序列中使用循环阶段吗?如果是怎么办?
问题:
foreach($selectQueryResults as row) {
// do something with the row-value
}
谢谢!
我不得不承认,我无法再访问 DataStage,也无法访问我曾经拥有的代码。
这是为了在作业级别传播阶段变量
但是 activity 完成您的任务的例程如下。
- 作为变量传播SQL
- 使用 DSExecute 执行命令行函数(调用 SQLPlus、nzsql 或任何您的命令行)并传递您的 SQL 变量
- Return 它的结果进入另一个变量
- 使用该变量,您可以拆分内容,首先按行,然后使用循环/for 语句按分隔符。
- 通过使用 DSAttachJob 函数,使用 DSSetParam 将键值对映射到特定作业的参数,或者只是将它们作为例程的输出传播 activity
请记住,错误处理和注释在 BASIC 例程中很重要,否则
随后,这是在转换器中传播阶段变量,一旦掌握它,它是一个非常强大的工具。
这里是在 Transformer 模型中定义阶段变量和聚合输出的文档和示例。请注意,阶段变量的顺序非常重要。
在转换器中,您可以将传入列定义为阶段变量,使用这些阶段变量来聚合、连接(字符串)、拆分、减去...基本上,一旦您了解它,您就可以做很多事情。
我建议先看一下 Transformer 示例,因为我怀疑这可能是您要找的。
请记住,不必在单个 Transformer 阶段完成所有操作,您可以在第一个 Transformer 阶段完成初始清理,然后在第二个 Transformer 执行复杂的循环,分解步骤以获得有效的步骤给你。
我对数据阶段有一个基本的理解问题。我是这个领域的新手。它是关于循环的实现。首先,我使用连接器阶段获得了 select 查询的几行。现在我想为每一行再做几个步骤。每行的结果现在应该用作进一步阶段的变量。我怎样才能做到这一点?我知道transformer阶段可能有环路,但好像没有解决我的问题
我应该在跳转序列中使用循环阶段吗?如果是怎么办?
问题:
foreach($selectQueryResults as row) {
// do something with the row-value
}
谢谢!
我不得不承认,我无法再访问 DataStage,也无法访问我曾经拥有的代码。
这是为了在作业级别传播阶段变量
但是 activity 完成您的任务的例程如下。
- 作为变量传播SQL
- 使用 DSExecute 执行命令行函数(调用 SQLPlus、nzsql 或任何您的命令行)并传递您的 SQL 变量
- Return 它的结果进入另一个变量
- 使用该变量,您可以拆分内容,首先按行,然后使用循环/for 语句按分隔符。
- 通过使用 DSAttachJob 函数,使用 DSSetParam 将键值对映射到特定作业的参数,或者只是将它们作为例程的输出传播 activity
请记住,错误处理和注释在 BASIC 例程中很重要,否则
随后,这是在转换器中传播阶段变量,一旦掌握它,它是一个非常强大的工具。
这里是在 Transformer 模型中定义阶段变量和聚合输出的文档和示例。请注意,阶段变量的顺序非常重要。
在转换器中,您可以将传入列定义为阶段变量,使用这些阶段变量来聚合、连接(字符串)、拆分、减去...基本上,一旦您了解它,您就可以做很多事情。
我建议先看一下 Transformer 示例,因为我怀疑这可能是您要找的。
请记住,不必在单个 Transformer 阶段完成所有操作,您可以在第一个 Transformer 阶段完成初始清理,然后在第二个 Transformer 执行复杂的循环,分解步骤以获得有效的步骤给你。