2014-02-16 128 views
0

我需要在具有两列的表上运行数学函数。 一列是日期,另一列是数字。 我需要按日期订购数据,并且对于每个日期,我需要从同一日期获取数字,从之前的1日期开始的数字以及之后的一个日期的数字。将表列加载到数据存储区中的数组中

我在这3个数字上运行函数。 我是一名Linux程序员,对我来说非常简单,我只是把它放在一个数组中并运行它。 锄头我可以用datastage做到吗?我可以将表中的数据加载到数组中并执行相同的操作吗? 我在datastage中发现的所有内容都是只能逐行运行。我只想知道是否可以轻松地在datastage中完成类似的事情,并且如果您可以指导我如何开始工作!

谢谢

回答

0

您可以在变压器阶段使用回路。 http://newtonapples.com/datastage-transformer-looping-1/ 使用排序阶段按日期排序数据(这很容易)。 然后使用变压器阶段。为最后一行创建2个循环变量,最后一行创建2个循环变量。然后将你的函数应用到三行。 这里是另一个循环的例子,但它比第一个链接有点复杂http://datastageinfoguide.blogspot.com/2013/01/looping-concept-in-datastage-85-or-87.html

0

如果你在PX中这样做,你将需要一个更复杂的解决方案,它需要依次运行部分/全部工作。如果我理解正确的话,你必须:

A行,第1天

B行,第2天

C行,第3天

你想要什么:

A, ,1,2

B,1,2,3

C,2,3,

首先,即使使用PX,也应按顺序运行此作业。 PX有办法做到这一点,但它不值得冒险。

第二,您应该按升序对所有数据进行排序。使用变压器从前一天查找号码。您将获得:

A,,1个

B,1,2

C,2,3

第三借此数据,并进行降序排列。在另一个变压器中应用基本上与之前相同的逻辑。这将让你

C,2,3,

B,1,2,3

A,,1,2

HTH!

相关问题