Oracle:使用新序列ID从Select插入行

Oracle:使用新序列ID从Select插入行,oracle,Oracle,我有一个带有列(ID,COL2,COL3,COL4,…)的表table\T.ID)和一个名为table\u Sequence的序列 对于特定的ID,我想复制这些行,其中所有列值都将来自这些ID选择的现有行,而ID本身将是序列中的新ID 它的语法是什么?这个问题很简单,但很难找到答案 例如: 6, 'Test1', 'Test2', ... 7, 'Test3', 'Test4', ... 8, 'Test5', 'Test6', ... 对于这些(6,7,8中的ID),我想自动插入: TABL

我有一个带有列(
ID
COL2
COL3
COL4
,…)的表
table\T.ID
)和一个名为
table\u Sequence
的序列

对于特定的ID,我想复制这些行,其中所有列值都将来自这些ID选择的现有行,而ID本身将是序列中的新ID

它的语法是什么?这个问题很简单,但很难找到答案

例如:

6, 'Test1', 'Test2', ...
7, 'Test3', 'Test4', ...
8, 'Test5', 'Test6', ...
对于这些
(6,7,8中的ID)
,我想自动插入:

TABLE_SEQUENCE.NEXTVAL, 'Test1', 'Test2', ..
TABLE_SEQUENCE.NEXTVAL, 'Test3', 'Test4', ..
TABLE_SEQUENCE.NEXTVAL, 'Test5', 'Test6', ..
结果是

3411, 'Test1', 'Test2', ...
3412, 'Test3', 'Test4', ...
3413, 'Test5', 'Test6', ...

首先创建一个查询,该查询将显示所需的行:

SELECT
    Id,
    col1, col2, col3, ....., colN
FROM table
WHERE /* the condition which selects rows you want */
   id >= 6 AND id <= 10

嗯?你能用数据展示一个例子吗?我展示了一个例子。有一种更快的方法可以在客户机中选择“导出”,lol。
INSERT INTO table( Id, col1, col2, col3, ....., colN )
SELECT
    TABLE_SEQUENCE.NEXTVAL,
    col1, col2, col3, ....., colN
FROM table
WHERE /* the condition which selects rows you want */
   id >= 6 AND id <= 10