问题描述
如何使用Informatica映射生成重复的序列。
Src文件
A
B
C
D
E
F
G
H
I
J
Trg文件
A 1
B 1
C 2
D 2
E 3
F 3
G 4
H 4
I 5
J 5
谢谢。
解决方法
只要输入行以正确的顺序排序,您就应该能够在Expression转换中使用变量端口来实现此目的。例如(伪代码)
v_RowCount = v_RowCount + 1
v_Seq = if v_RowCount Mod 2 = 0 then (v_Seq + 1) else v_Seq
(Output port) out_Seq = v_Seq
,
您可以使用序列生成器,然后使用将NEXTVAL的值除以2的表达式:
OUT: ROUND(NEXTVAL / 2)
在序列发生器中,您可以将“起始值”设置为1并选中“重置”,这样,如果需要的话,映射始终以1 1 2 2 3 3开头。