我叫毕加索
2016-11-14 06:42
采纳率: 11.1%
浏览 2.0k

oracle循环添加元素执行insert

select username from user 查出来的值是
图片说明

现在把里面的值(username)要给插入到另一个表
insert into mytable( key,username,cols,rows ) values( '26','张三','1','1' ) ;
insert into mytable( key,username,cols,rows ) values( '26','李四','1','1' ) ;
insert into mytable( key,username,cols,rows ) values( '26','王五','1','1' ) ;
....

这样插入太麻烦了,请问有没有简介的方法。
在插入的时候,只有username 是变值,其他的不便。username有很多。
请问咋样才能一下子或者一条sql写出来

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • threenewbee 2016-11-14 06:53
    已采纳
     insert into mytable( key,username,cols,rows ) select "26", username, "1", "1" from user;  
    
    打赏 评论
  • guwei4037 2016-11-14 07:02

    用oracle的游标.

    declare
      cursor t_cursor
      is
      select  username  from user;
      t_row t_cursor%rowtype;
    begin
      for t_row in t_cursor loop
        insert into mytable(key,username,cols,rows) values('26',t_row.username,'1','1');
      end loop;
    end;
    
    打赏 评论

相关推荐 更多相似问题