insert into b(idd,a, b, c) select (select max(idd)+1 from b),d,e,f from b

解决方案 »

  1.   

    insert into b(idd,a, b, c) select rownum,d,e,f from b;
      

  2.   

    用sequence也行
    insert into b(a,b,c,id)select d,e,f,sequence.nextval from b;
      

  3.   

    看需要,上面的方法bzszp(SongZip)、 bluelamb(bluelamb) 都赞成!
      

  4.   

    如果b表里有数据还是用sequence比较好,不至于数据混乱
      

  5.   

    insert into b(idd,a, b, c) select (select max(idd)+1 from b),d,e,f from b
    比较好
      

  6.   

    oracle的话就用sequence,将来新增记录时也可用。用rownum,再次执行此语句时ID就重复了。
      

  7.   

    insert into b(a, b, c) select seq.nextval,e,f from b
      

  8.   

    还是 bzszp(SongZip) 方法好:)学习!