Netezza的代理键 - SSIS和Netezza序列

时间:2016-05-09 19:17:20

标签: ssis netezza

我从Oracle表中获取一些数据,并使用控制流中的SSIS 脚本任务插入到Netezza表中。

目标:填充目标表中的代理键(如登陆ID)字段。

现在查询如下:

insert into destination_table
(
id, col1, col2, col3
)
select (SELECT NEXT VALUE FOR MY_SEQUENCER), field1, field2, field3
from source_table

我正在使用Netezza序列(MY_SEQUENCER)来生成唯一编号,但在查询提交之前,序列值不会增加。因此,在插入数据后,我得到了:

1, val1, val2, val3
1, val4, val5, val6
...

后续运行:

2, val1, val2, val3
2, val4, val5, val6
...

等等。

有没有办法在不使用序列的情况下实现这一目标?

非常感谢您阅读以及您可能提供的任何想法/提示/建议。

2 个答案:

答案 0 :(得分:0)

我从这里看到了决议...... In Netezza I'm trying to use a sequence in a case statement but the sequence value doesn't increment

insert into destination_table
(
id, col1, col2, col3
)
select (NEXT VALUE FOR MY_SEQUENCER), field1, field2, field3
from source_table

答案 1 :(得分:0)

删除括号和冗余选择,它将为每一行生成一个新值。

splitViewController