我从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
...
等等。
有没有办法在不使用序列的情况下实现这一目标?
非常感谢您阅读以及您可能提供的任何想法/提示/建议。
答案 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