gpt4 book ai didi

sql - DB2:使用选择插入,每次插入时为每一个新行增加一列?

转载 作者:行者123 更新时间:2023-12-04 19:34:20 24 4
gpt4 key购买 nike

我试图将一个表中一列的内容复制到另一个表中,同时希望为创建的每一行使用递增的数字填充主键列:

我尝试执行以下操作:

INSERT INTO Table1 (col1, col2) VALUES((SELECT col1 FROM table2), (SELECT NEXTVAL FOR col2_SEQ FROM sysibm.sysdummy1));

但得到以下错误:
DB21034E  The command was processed as an SQL statement because it was not a 
valid Command Line Processor command. During SQL processing it returned:
SQL0348N "NEXTVAL FOR col2_SEQ" cannot be specified in this
context. SQLSTATE=428F

似乎我不能以这种方式使用序列值,还有其他方法可以实现我想要做的事情吗?我只需要 table1 中的 col2 为 table2 中 col1 中的每个新条目填充一个唯一的 BIGINT

最佳答案

如果您使用的是 Linux/Unix/Windows(可能也适用于其他人),我认为您只需要 NEXT VALUE FOR sequence .在这种情况下,您不需要从 sysdummy 中进行额外的选择。

INSERT INTO table1 (col1, col2)
SELECT col1, NEXT VALUE FOR col2_SEQ
FROM table2

关于sql - DB2:使用选择插入,每次插入时为每一个新行增加一列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9096541/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com