将行从一个表复制到另一个表并添加主键和日期

时间:2016-04-13 16:18:27

标签: sql oracle11g

我正在尝试将行从一个表复制到另一个表,另外添加一个新的主键和系统日期。

INSERT into tableB (id, date, name, type) 
    SELECT id_seq.nextval, sysdate, name, substr(type, 1, 1) 
    FROM tableA 
    WHERE type != 'ABC' 
    ORDER BY name;

我收到错误

  

此处不允许使用序列号

不确定指定新主键的方式和位置。感谢Oracle SQL世界中的新手!

---->更新:最终解决方案

 INSERT into tableB (id, date, name, type) 
    SELECT id_seq.nextval, sysdate, name, type1 
    FROM (SELECT name, substr(type, 1, 1) as type1 
    FROM tableA 
    WHERE type != 'ABC' 
    ORDER BY name);

0 个答案:

没有答案
相关问题